Q& A网站的Solr指数策略

时间:2012-04-25 15:49:15

标签: solr indexing

我对Solr很新,我想用它来搜索Q& A网站(Quora之类)我正在建设。

以下是问题和答案: 题   - 标题   - 说明   - 标签(社交标签)   - 分数(分数来自用户上/下投票的问题)

答案   - 说明   - 标签   - 分数(分数来自用户上/下投票答案)

当然,您可以根据需要尽可能多地回答问题。

需要索引的文档类型有三种:问题,文章......

在搜索问题和答案的索引方面,最佳策略是什么?

1 个答案:

答案 0 :(得分:0)

如果您使用DataImportHandler,则可以为问题设置<entity>,然后为答案指定子实体。例如:

<document name="questions">
  <entity name="question" query="select id, question from questions">
    <field column="id" name="id" />
    <field column="question" name="question" />

    <entity name="answer" 
        query="select question_id, answer from answers"
        cacheKey="question_id"
        cacheLookup="question.id" 
        processor="CachedSqlEntityProcessor">
      <field name="answer" column="answer" />
    </entity>

  </entity>
</document>

请注意,此示例使用CachedSqlEntityProcessor来避免不必要地访问数据库。