【问题标题】:How can I represent a key value structure in Apache Solr efficiently如何有效地表示 Apache Solr 中的键值结构
【发布时间】:2013-03-27 14:39:55
【问题描述】:

我有一个存储在日志表中的名称和日期结构。它们代表用户操作以及何时执行。

Name        Date
John A.     2013-04-01
Leev B.     2013-04-02
Anse E.     2013-04-03

我需要索引该数据,保持名称和日期之间的关系。 我已经尝试使用分隔符 ($) 连接字段:

"John A.$2013-04-01"
"Leev B.$2013-04-02"
"Anse E.$2013-04-03"

它运行良好,但从现在开始,用户可以按名称的一部分进行搜索,而无需完全输入,并使用日期范围。所以一个普通的搜索是:

fq = log_user_date:["John*2013-12-01" TO "John*2013-12-31"]

碰巧 Apache Solr 无法处理中间带有通配符的查询范围。

索引“键值”数据有更好的解决方案吗?

【问题讨论】:

    标签: solr indexing range wildcard


    【解决方案1】:

    为什么要用分隔符连接名称和日期?您可以改为保留两个单独的字段:Solr 中的字符串字段 name 和日期字段 date 并执行类似

    的查询
    q=*:*&fq=name:John*&fq=date:[2013-12-01T00:00:00Z TO 2013-12-31T11:59:59Z]
    

    【讨论】:

      猜你喜欢
      • 2019-01-19
      • 1970-01-01
      • 2014-09-28
      • 2022-01-07
      • 2010-10-01
      • 2017-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多