我正在尝试找到一个好的库来构建语言语料库搜索引擎。这样的引擎必须产生绝对透明的搜索结果(找到的匹配的确切数量,即使整个语料库都匹配也不会切割结果),基本的查询语法(AND,OR,NOT 运算符,距离搜索,通配符搜索)和精炼搜索的能力设置为搜索的文档(即设置一个 subcirous)。一个重要的细节是索引分区和并行执行搜索的能力(语料的大小有10^8个单词的量级,并且搜索服务必须是实时的)。
主要的选择是在 Sphinx 和 Clucene(一个 C++ Lucene 端口)之间。不幸的是,我对这些图书馆的组织了解不多,所以知道哪一个更符合我的要求会很有帮助。
(我还尝试了一个专门的引擎 - IMS Corpus Workbench - 结果证明它的可扩展性不如需要)。