ruby-on-rails - Elasticsearch清除单个查询词的缓存

标签 ruby-on-rails elasticsearch

根据Elasticsearch clear cache docs,您可以清除字段的缓存,但是是否可以清除单个查询词的缓存?

为了防止将来出现此问题,我希望不要对“null”查询进行缓存,或者不经常对缓存进行更新。是否可以在该粒度级别为缓存设置规则?

最佳答案

不可以,您不能指定该级别的粒度。

对于默认启用缓存的过滤器,您可以将_cache覆盖为false:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-term-filter.html#_caching_18

“缓存经常更新”是什么意思?缓存的作用域是段,这意味着只要段有效,它们就有效。

要了解有关缓存,过滤器,不可变段的优点和缺点的更多信息,请阅读以下文章:

  • Optimizing Elasticsearch Searches:关于过滤器和缓存的重要性。
  • Elasticsearch from the Bottom Up:关于段和缓存的工作方式。

  • 我认为您会发现不必担心必须清除单个术语过滤器的缓存条目。

    关于ruby-on-rails - Elasticsearch清除单个查询词的缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25413881/

    相关文章:

    elasticsearch - 在 Elasticsearch 中使用多对多关系

    ruby-on-rails - Rails 应用程序中的猴子修补数据库适配器

    ruby-on-rails - 运算符不存在 : character varying[]

    mysql - 何时在 Rails 中的表中添加哪些索引

    elasticsearch - 如何通过大量潜在值对 Elasticsearch 查询进行子集化或限制?

    javascript - Elasticsearch 发送 get 请求而不是 post

    elasticsearch - 如何在Elasticsearch中创建Kibana索引

    ruby-on-rails - 将具有 UTC 时间的变量转换为秒整数 (Ruby)

    ruby-on-rails - Rails为什么要为JSON PUT请求返回 “head :no_content”?

    Python 3.6 asyncio - 从未检索到任务异常 - 任务 yield 不佳 : 200