我们的开发团队目前正在考虑将我们的搜索系统迁移到Apache Solr,我们非常感谢有关设置的一些建议.我们正在索引大约两亿个数据库行.我们全天增加了大约十万个新行.这些新数据库行必须在收到后的两分钟内进行搜索.
我们不希望索引使搜索者陷入困境,因此我们的想法是在复制设置中让不同的计算机上运行两个Solr服务器.第一个Solr实例将是索引器.它将使用DataImportHandler索引增量并启用自动提交以防止过热的提交率.索引优化将在预定期间进行.第二个Solr实例(从属)将成为主要搜索器,并将其索引存储在RAIDed固态驱动器上.
我们关注的是故障转移.我们的搜索是关键任务.如果主要搜索者因任何原因而失败,我们的搜索服务将自动将查询分流到索引器节点.但索引同样重要.如果索引器死了,我们需要热备故障转移.是否有推荐的方法在Solr复制中自动执行主节点故障转移?我已经开始研究ZooKeeper,但我不确定这是否是最好的方法.