Elasticsearchrefresh和fresh特性梳理

refresh

数据从index buffer中进入filesystem cache的过程)translog中的操作记录并不会被清除,当数据从filesystem cache中被写入磁盘之后才会将translog中清空。

站在用户的角度思考问题,与客户深入沟通,找到依兰网站设计与依兰网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广、主机域名、网页空间、企业邮箱。业务覆盖依兰地区。

手动执行refresh:

调用_refresh就可以立即实现内存->文件系统缓存, 从而使文档可以立即被搜索到。

#单个index
POST /twitter/_refresh

#多个index
POST /index01,index02/_refresh

#全部index
POST /_refresh

参考图

Elasticsearch refresh 和 fresh 特性梳理

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操作。

当前文章:Elasticsearchrefresh和fresh特性梳理
链接URL:http://scyanting.com/article/ghgdgj.html