Elasticsearch refresh 和 fresh 特性梳理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch refresh 和 fresh 特性梳理相关的知识,希望对你有一定的参考价值。
refresh
数据从index buffer中进入filesystem cache的过程)translog中的操作记录并不会被清除,当数据从filesystem cache中被写入磁盘之后才会将translog中清空。
手动执行refresh:
调用_refresh就可以立即实现内存->文件系统缓存, 从而使文档可以立即被搜索到。
#单个index
POST /twitter/_refresh
#多个index
POST /index01,index02/_refresh
#全部index
POST /_refresh
参考图
fresh
从filesystem cache写入磁盘的过程就是flush。
手动执行fresh:
#单个index
POST /twitter/_fresh
#多个index
POST /index01,index02/_fresh
#全部index
POST /_fresh
触发fresh的条件
1:es的各个shard会每个30分钟进行一次flush操作;
2:或者当 translog 文件大小大于512MB主动进行一次 flush;
3:每次 index、bulk、delete、update 完成的时候,触发flush translog 到磁盘上;
核心配置项:
1:index.translog.flush_threshold_ops:
当发生多少次操作时进行一次flush。默认是 unlimited。
2:index.translog.flush_threshold_size:
当translog的大小达到此值时会进行一次flush操作。默认是512mb。
3:index.translog.flush_threshold_period:
在指定的时间间隔内如果没有进行flush操作,会进行一次强制flush操作。默认是30m。
4:index.translog.interval:
多少时间间隔内会检查一次translog,来进行一次flush操作。
以上是关于Elasticsearch refresh 和 fresh 特性梳理的主要内容,如果未能解决你的问题,请参考以下文章
Elasticsearch:Elasticsearch中的refresh和flush操作指南
Elasticsearch refresh 和 fresh 特性梳理
Elasticsearch Refresh vs Flush
Elasticsearch Refresh vs Flush