如何在Datastax enterprise solr中获取同义词?

时间:2013-11-22 20:24:24

标签: solr datastax-enterprise

正在推动DSE SOLR实施的轮胎。 这是一个架构代码段:

<!-- A text field that only splits on whitespace for lowercase matching of words -->
<fieldType name="lowtokens" class="solr.TextField" positionIncrementGap="100">
  <analyzer>
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory" />
  </analyzer>
</fieldType>
<!-- ind name individual name synonyms on first token only (firstname) -->
<fieldType name="basename" class="solr.TextField">
  <analyzer type="index">
    <tokenizer class="solr.PatternTokenizerFactory" pattern="(^\S+)" group="1" />
    <filter class="solr.ASCIIFoldingFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory" />
    <filter class="solr.SynonymFilterFactory" synonyms="synonym_ind.txt" ignoreCase="true" expand="true"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
  <analyzer type="query">
    <tokenizer class="solr.PatternTokenizerFactory" pattern="(^\S+)" group="1" />
    <filter class="solr.ASCIIFoldingFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory" />
  </analyzer>
</fieldType> 

以下是同义词文件中的一些行:

alan, al
alberta, berta, bertie, al, albie, bert, berto, burt
gregory, gre, greg, gregg, gregor, greig, grieg

因此,在Solr Analyzer页面中,索引不会将Alan扩展为Alan和Al Greg等也一样。

从solr获取它,它似乎已加载好了:

curl -X GET http://localhost:8983/solr/resource/search.cust/synonym_ind.txt
synonym_ind.txt

它只返回名称而不是错误。 UNIX格式的文件是38607字节。 救命?有人使用DSE SOLR吗?遗憾的是,Datastax关闭了他们的论坛......

1 个答案:

答案 0 :(得分:0)

  • 您是如何上传同义词文件的?

  • 上传同义词文件后,您是否强制重新加载Solr核心?

curl "http://localhost:8983/solr/admin/cores?action=RELOAD&name="
  • 您是否在索引文档之前上传了同义词并重新加载Solr核心,或者您是否强制使用DSE Solr reindex,因为您的同义词是索引时间?
curl "http://localhost:8983/solr/admin/cores?action=RELOAD&name=&reindex=true&deleteAll=true"
  • DataStax决定从专有支持论坛转向SO,理论上是为了提供更好的支持。
祝你好运。