我正在努力理解Lucene创建索引的多种方法,但找不到相应的教程。
目标:索引200万个小文档(仅标题和标签,如果需要,也可以存储在一个字段中)并执行约25万个简单计数查询。必须尽快处理。索引大小只有几百MB,并且可以存储在RAM中。
选项:
- RamDirectory
我使它工作,并且它在约1.6秒内索引了100k个文档,这很好。问题是不建议使用RamDirectory,而文档建议改为使用MMapDirectory,但是由于这是基于文件的解决方案,因此我担心性能(它必须尽可能快)。
- MemoryIndex
这件事令人困惑。它被描述为“单文档主内存Apache Lucene全文搜索索引”。我尝试了该示例,但是count查询始终返回“ 1”(可能是因为它是“单个文档”索引)。似乎不适合我的情况。
- 实例化索引
似乎是内存中的另一个实现,但看起来它是一个实验性组件,已被删除。
RamDirectory对我来说效果很好,只有弃用警告才令人担忧。
我还有其他选择吗?感谢您的任何建议!