我一直在了解 Lucene 等传统搜索引擎的工作原理,我知道它们通常通过对语料库中的文本进行标记来构建倒排索引。然后这些代币将直接在索引中使用。
我的问题是:为什么这些搜索引擎在构建倒排索引之前不将所有标记转换为唯一整数(例如,
apple -> 435
、super -> 653
等)?英语中的单词数量有限,比如一百万个。似乎使用整数而不是文本标记可能会减少索引大小,减少总语料库的大小,因为我使用整数而不是单词并加快搜索速度(因为处理数字数据应该更快)。
具体来说,我很好奇:
如果您对在 Lucene 等系统中使用文本标记而不是整数的权衡和考虑因素有任何见解,我将不胜感激。也许我想到的一些警告或任何性能优势都可以忽略不计?