我使用Solr进行索引和搜索。现在,我的新数据正在elasticsearch上编入索引。如何使用elasticsearch的Solr索引进行组合搜索?
由于Solr和elasticsearch都是在Apache Lucene上构建的,因此必须有一种方法/插件来消费弹性搜索的Solr索引吗?
我的尝试:
我为此找到了river,但在1.5.0的弹性搜索中,河流为deprecated。
答案 0 :(得分:5)
您不能直接执行此操作(没有数据迁移),因为它们的内部结构/表示不兼容。他们的查询语言也不兼容。
但您可以在它们前面使用联合引擎,例如Carrot2。
答案 1 :(得分:2)
虽然两个搜索服务器都在使用Lucene(并且内部索引存储为Lucene索引),但在处理文档(如文档版本,分片策略,动态映射等等)时,它们使用Lucene的方式存在很多差异。难以使用相同的索引。如果您的数据存储在SolR实例中,您可以从SolR中提取它们并将它们推送到ElasticSearch中。
顺便说一句,河流给你同样的限制:“只能从Solr中检索存储的字段,因此在elasticsearch中编入索引”