为了增加查询的响应速度,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

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐