为了增加查询的响应速度,ES会把很多的数据加载到缓存里面,如果想把缓存清理掉,该如何处理呢?今天就给大家讲一下缓存清理的方法

索引缓存清理:

语法格式:

POST /<target>/_cache/clear

target说明:

  • 清理单个索引的缓存:POST /my-index-000001/_cache/clear
  • 清理多个索引的缓存:POST /my-index-000001,my-index-000002/_cache/clear
  • 清理所有索引的缓存,有三种写法:POST /_cache/clear;POST /*/_cache/clear;POST /_all/_cache/clear

清理特定类型的缓存

默认情况下,会清理索引的所有缓存,我们可以通过设置query, fielddata , request指定清理特定的缓存
POST /my-index-000001/_cache/clear?fielddata=true  
POST /my-index-000001/_cache/clear?query=true      
POST /my-index-000001/_cache/clear?request=true

清理特定字段的缓存

通过使用逗号分隔的相关字段列表指定fields参数来清除与特定字段相关的所有缓存。
POST /my-index-000001/_cache/clear?fields=foo,bar

需要注意的是提供的名称必须指具体字段,不支持对象和字段别名。


 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐