在Lucene的同一存储位置多个索引(Multiple indexers on same stora

2019-09-21 21:01发布

我想建立一个高度可扩展的应用程序,我打算利用Lucene作为我的搜索引擎库。 浏览音乐文件和常见问题,我意识到,它只允许一个指数作家通过创建索引目录中的某些write.lock上一些存储位置打开。 我们可以在该索引打开多个IndexReaders。

我感兴趣的地方建设上有不同的计算机/服务器和多个搜索解答各类疑问由这些索引创建索引的索引运行数量的架构。 这两个搜索和索引会在不同的计算机上运行。

在这种情况下这将是最好有多个索引使用相同的索引存储位置来索引文件。 如何实现这一目标? 我应该去的东西,如NFS(网络文件系统)? 已经Solr的或对Lucene之上的一些其他的框架已经照顾这个问题? 这使我想起一个显而易见的解决方案是创建索引每一个索引,然后问搜索者可以在多个指标显示目录查询。 但是,这些将导致创建大量不同的指标显示目录的,因为有索引的服务器,我的猜测是没有多大希望的,因为很多。 我想(指数迪尔斯数)<<(#索引器)<(搜索排名)

什么是各种替代方案我已经在这种情况下?

Answer 1:

首先:从来没有使用NFS使用Lucene,它只是缓慢和风险。

如果涉及到可扩展性和高可用性,我建议你只是让elasticsearch做所有的辛勤工作给你,让你可以专注于你的数据。 当然,你可以有多个线程索引数据。

如果您想了解更多关于elasticsearch的分布式特性,我建议你看看这个视频 。



Answer 2:

看看ElasticSearch和Solr的云 。

ElasticSearch和Solr的比较 。



文章来源: Multiple indexers on same storage location in Lucene