【问题标题】:How to deal with constantly changing data and SOLR indexes?如何处理不断变化的数据和 SOLR 索引?
【发布时间】:2010-05-28 13:10:22
【问题描述】:

下午,伙计们,

我正在使用 SOLR 索引来搜索我网站上的项目。搜索结果包含项目的平均评级和项目具有的 cmets 数量。结果可以按等级和 cmets 数量排序。

但显然使用 solr 索引,这些数字在重新索引 db(200 万~ 行)(可能每晚完成)之前不会更新。

你们认为解决这个问题的最佳方法是什么?

【问题讨论】:

    标签: lucene solr


    【解决方案1】:

    好吧,我认为您应该更改您的数据库 - 索引同步策略:

    • 第一种方法:在提交数据库更改时,还将更改(其中一批)发布到索引。您应该编写一个映射器层来将您的域对象映射到 solr 文档(请记住,持续存在,如果一切正常,则索引 - 这对我们来说很好;-))。如果您想实现近乎实时的索引更新,您应该看到像 zoey(linkedin 基于 lucene 的搜索框架)这样的解决方案
    • 第二种方法:查看增量导入(以及更频繁地编制索引更新)。

    【讨论】:

    • 太好了,谢谢Lici的回复,我下周去Zoie好好看看,界面、设置过程和Solr一样吗?我不熟悉将域对象映射到 solr 文档,您有任何可以启发的链接吗?再次,非常感谢您的回复:)
    • Zoey 是一个比 Solr 更低级别的解决方案。我认为最好的解决方案是通过 DIH 继续索引并设计您的域 --> SolrInputDocument 映射层以获得最新的更新结果。您的映射层取决于所选的客户端技术。我使用 SolrJ(基于 Java)。请参阅:wiki.apache.org/solr/IntegratingSolr
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-05
    • 2021-07-06
    • 1970-01-01
    • 2011-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多