2016-06-08 83 views
0

说我有这样的查询过滤器:将Elasticsearch删除存在过滤器高速缓存后,我在查询中设置缓存为false

{ 
    "query" : { 
     "filtered" : { 
      "filter" : { 
       "term" : { 
        "price" : 20 
       } 
      } 
     } 
    } 
} 

根据官方文档,会有相关的密钥的过滤器高速缓存“价钱”。 有一天,我更改查询如下:

{ 
    "query" : { 
     "filtered" : { 
      "filter" : { 
       "term" : { 
        "price" : 20, 
        "_cache" : false 
       } 
      } 
     } 
    } 
} 

会自动Elasticsearch去除存在缓存?

+0

设置' “_cache”:FALSE'已被弃用ES 2.x和支持的用于将在ES 5.x中被除去从ES 2.x开始,它有一个更聪明的缓存。 – pickypg

回答

1

不太确定。它可能最终被删除,但可能不会立即删除。这并不重要,因为设置_cache = false会告诉弹性搜索不使用缓存,即使它在技术上仍然存在。如果你想手动清除缓存,那么有一个API。

下面是一个例子:curl -XPOST 'http://localhost:9200/twitter/_cache/clear

https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-clearcache.html

+0

虽然此链接可能会回答问题,但最好在此处包含答案的基本部分,并提供供参考的链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/12635780) – Pbk1303

+0

谢谢!我更新了我的答案,以包含链接中的相关信息 – pythonHelpRequired