ES进阶学习之读写流程原理
今天小编来带大家学习一下es的读写工作流程及其原理
不多说,进入正题
注:以下所有文字描述对照上图理解更加具体!!
es读工作流程
先说这个读的流程吧,是这样的,首先呢,在Es集群中,获取数据分为查询和搜索,查询:GET某一条数据,当你写入了某个document的时候,这个document会给你自动分配一个id doc id,当然这个docid我们也可以在写入doc的时候手动指定这个docid,然后查询的时候通过docid去进行查询, 也就是根据doc id进行hash路由到一个随机的shard节点上,这个时候它就作为协调节点,他会根据这个docid去查询到这个doc在哪个节点上,因为我们知道读的话,shard和replica都可以去读,这时候就采用随机轮询的算法,让客户端在shard和replica中随机进行读取,读取完后,接受请求的协调节点对数据进行返回