【问题标题】:Combining fields in an index组合索引中的字段
【发布时间】:2014-06-12 05:01:39
【问题描述】:

这是关于在不降低搜索灵活性的情况下减少索引空间。我有字段 A 和 B。我想搜索字段 A、B 或 A 和 B 块,并查询 X Y 字词。为此,我的索引中有以下字段:

field A: A
field B: B
field AB: A + B

生成的索引会重复数据并浪费空间。有没有办法让我的索引中只有字段 A 和 B,但仍然允许搜索字段 AB?这与搜索字段 A 或字段 B(当 A 包含 XY 或 B 包含 XY 时返回命中)不同,它不同于搜索字段 A 和字段 B(当 A 包含 XY 并且 B 包含 XY 时返回命中)。例如,我想捕捉 A 包含 X 而 B 包含 Y 的情况。请指教。

【问题讨论】:

  • 我用 Python 编写了一个自定义索引器来在我的项目中执行此操作。从数据库轮询数据,准备发送到 ES 时组合字段,然后批量索引数据。
  • 我为你感到高兴,但你是怎么做到的?
  • 编码中,能不能分别求X和Y值???
  • 我不懂 BlackPOP。

标签: search indexing elasticsearch django-haystack


【解决方案1】:

您可以对多重匹配查询进行各种设置,以实现您想要的结果。
看这里 - http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html

【讨论】:

    猜你喜欢
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 1970-01-01
    • 2013-11-01
    • 2015-11-05
    相关资源
    最近更新 更多