ES 索引落盘流程简图
2023-05-20 14:50:05 0 举报
ES 索引落盘原理及流程简图
作者其他创作
大纲/内容
1、Refresh 时间间隔2、index_buffer_size 3、translog
Node-01
P0
segment1(倒排)
filesystem cache
主副分片交互
Data(Index)
Filed、trem
document
宕机重启后,translog会根据commit point文件将丢失的segment file都重新生成,不会造成数据丢失
Lucene索引
默认每隔30分钟或者translog>512mb,落盘,同步刷新,异步刷新
ES会运行一个任务检测当前磁盘中的segment,对符合条件的segment进行合并操作,减少lucene中的segment个数,提高查询速度,降低负载。此过程会真正删除标记为 .del 文件,也可手动执行 _forcemerge
Disk 磁盘
R0
MASTER
R1
Node-03
P1
translogtranslog-N.tlog tranlog.ckp
索引恢复
flush
Refresh
数据同步
1、最小主节点数2、推迟分片分配3、集群恢复方面的配置
路由策略(shard = hash(routing) % number_of_primary_shards)
index-buffer
每隔一秒,数据从buffer写入segment file(ES近实时搜索原因),同时更新commit point
Node-02
分片(shard)是最底层的读写单元,目的是分割巨大索引,让读写并行操作,分片可以独立执行读写操作,当集群扩容或缩小时,ES会自动迁移分片,使数据均匀分布在集群中;优点:1、提高水平扩展能力;2、增加系统可用性;3、数据副本可以读操作并发执行等问题:数据一致性(translog )
segment2(倒排)
清空--删除、新建
收藏
0 条评论
下一页