【问题标题】:Lucene - Token filter that access different fieldLucene - 访问不同字段的令牌过滤器
【发布时间】:2013-02-25 14:42:06
【问题描述】:

我正在尝试创建自己的 StopFilter 实现,它将根据其他字段选择术语。

有没有办法从 TokenFilter 访问 Document,然后访问其他字段?

(我正在考虑使用 UpdateRequestProcessor 来通知我的 TokenFilter 状态,但我没有找到好的方法)

谢谢, 本尼

【问题讨论】:

    标签: solr lucene


    【解决方案1】:

    令牌过滤器无权访问其他字段。只有它自己。另一方面,UpdateRequestProcessor 可以访问当前文档的所有字段。

    您为什么不使用 UpdateRequestProcessor 并生成由某个唯一值分隔的令牌。然后,只需使用基本的 Tokenizer 来打破它,你就有了过滤后的值。

    【讨论】:

    • UpdateRequestProcessor 的问题在于它实际上改变了字段,我希望将原始值存储在那里。
    • 你能在一个克隆的字段中做存储的令牌吗,它是仅索引的。然后你在 eDisMax 中有那个字段而不是原来的那个。
    • 在这种情况下,我需要使用克隆的字段进行搜索,而原始字段应该被索引为“false”。对吗?
    • 当然。您可以搜索大量注释/处理的字段,但将原始字段返回给客户端。或者,如果原始表单也有用(例如,在“全文”匹配中),则您搜索两者但使用不同的提升。
    猜你喜欢
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    • 2012-07-09
    • 2012-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多