文章目录
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201009225836635.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIxMzgzNDM1,size_16,color_FFFFFF,t_70#pic_center)
1.概述
1.1 Segment是什么?
每个分片包含多个
segment(段),每一个segment都是一个倒排索引
、在查询的时,会把所有的segment查询结果汇总归并后最为最终的分片查询结果返回。
在创建索引的时候,ES会把文档信息写到内存bugffer中(为了安全,也一起写到translog),定时(可配置)把数据写到segment缓存小文件中,然后刷新查询,使刚写入的segment可查。
虽然写入的segment可查询,但是还没有持久化到磁盘上
。这句话重点是segment是内存的。因此,还是会存在丢失的可能性的
。所以,ES会执行flush操作,把segment持久化到磁盘上并清除translog的数据(因为这个时候,数据已经写到磁盘上,不再需要了)。
参考: