【问题标题】:How to disable caching for sort query in solr?如何在 solr 中禁用排序查询的缓存?
【发布时间】:2017-11-01 16:03:00
【问题描述】:

我正在按具有 2500 万个唯一值的“id”字段进行排序。因此,在排序后,我可以看到填充了超过 1 GB 的“id”字段的字段缓存。因此,我想禁用在 fieldcache 中创建条目,因为我可以通过性能优化 Heapmemory。我尝试提供 q={!cache=false}*.* 但仍然可以看到 fieldcache 填充了 id 字段。我还给了 docValues=true,indexed=false 和 stored=false 但没有什么可以阻止“id”字段填充到字段缓存中。我在云模式下使用 solr 5.2.1。有什么方法可以实现吗?

【问题讨论】:

  • 启用 docValues 后是否重新索引?
  • 非常感谢。重新索引后,它与 docValues=true 一起工作。我必须删除所有文档,然后重新索引,然后它才起作用。是否删除了重新索引所需的所有文档? (尝试删除记录,然后提交和优化,但不起作用)。除了将 docValues 设置为 true 之外,还有其他方法可以禁用字段缓存吗?。

标签: solr solrcloud


【解决方案1】:

更改字段定义后,您必须重新索引所有文档。由于使用 docValues 的更改不会为所有文档填充,否则您最终仍会使用旧结构占用字段缓存中的空间。

如果您只是重新索引单个文档然后提交该文档,则该文档是唯一填充了 docValues 的文档。优化索引会合并组成索引的段,但不会重写它们的内容。

我不熟悉禁用字段缓存的方法。由于它是一个低级别的 Lucene 概念,Solr 对此无能为力。

【讨论】:

    猜你喜欢
    • 2015-04-01
    • 2020-07-18
    • 2010-12-25
    • 2013-04-09
    • 1970-01-01
    • 2022-06-24
    • 1970-01-01
    • 2014-12-23
    • 2014-03-25
    相关资源
    最近更新 更多