剖析ElasticSearch基础分布式架构

栏目: 后端 · 发布时间: 6年前

内容简介:前面已经介绍了ElasticSearch是一个分布式系统,分布式是为了应付大数据量。ElasticSearch它实现分布式的时候就已经将所有复杂的操作自己都实现了。比如:ElasticSearch的分片机制给我们带来了什么好处?当我们想要存储一篇文档的时候不用去手动选择应该将文档存到那个分片上面。集群发现机制, 它可以在我们有了多个elasticSearch节点的时候自动将我们的ElasticSearch组成一个集群,不用我们去配置(前提是同一台机器上, 不同的机器需要配置IP)

前面已经介绍了ElasticSearch是一个分布式系统,分布式是为了应付大数据量。ElasticSearch它实现分布式的时候就已经将所有复杂的操作自己都实现了。比如:

分片机制

ElasticSearch的分片机制给我们带来了什么好处?当我们想要存储一篇文档的时候不用去手动选择应该将文档存到那个分片上面。

claster discovery 集群发现机制

集群发现机制, 它可以在我们有了多个elasticSearch节点的时候自动将我们的ElasticSearch组成一个集群,不用我们去配置(前提是同一台机器上, 不同的机器需要配置IP)

shard负载均衡

当我们有3个节点需要分配25个shard的时候,ElasticSearch会自动将这25个分片平均分配到每个节点上面

shard副本

当我们新增一个索引时,不需要去维护它的备份这些,ElasticSearch会自动帮我们完成这些复杂的操作。

请求路由

当我们想要获取某条数据时,并不用管到底到那个分片或者节点上面去获取,ElasticSearch会自动将我们的请求路由到有该数据的地方。

集群扩容

当我们新启动一个节点的时候会自动加入到当前已经有了的集群里。

shard重分配

当我们有有没有分配的shard的时候,如果这个时候有了新的节点加入进来,那么会自动分配该shard

ElasticSearch的垂直扩容和水平扩容

垂直扩容

我们现在有4台服务器,每台服务器的容量是1T,最多能够存储4T的数据

剖析ElasticSearch基础分布式架构

现在的需求是要存6T数据,那么我们如果采用垂直扩容的方案,升级其中两台服务器的容量为2T,然后让它加入集群就可以实现了,这是垂直扩容的解决方案。

剖析ElasticSearch基础分布式架构

水平扩容

水平扩容就是在原有的基础上面直接加上两台新服务器,容量是1T,那么这个时候到底是使用水平扩容还是垂直扩容呢?一般情况是是采用水平扩容,因为水平扩容的价格更便宜。

剖析ElasticSearch基础分布式架构

增加或减少节点时数据的自动rebalance

在ElasticSearch集群中总有一些节点会负载要重一些,因为当我们的分片分配的时候可能不能平均分配,某些节点需要担任更多的负载,比如我们有10个分片,但是有只有3台服务器,那么就会有一台会多承担负载,这个时候如果我们新增分片的时候,这个分片会自动分配到负载较轻的节点上面。

ElasitcSearch里面的master节点

默认情况下ElasticSearch中的会选择出一个master节点,这个master节点主要管理集群的元数据,比如说索引的创建和删除,维护索引元数据,节点的增加和移除,维护集群的元数据(元数据是指index,type,id这三个元数据)。

节点平等的分布式架构

在ElasticSearch中,所有的节点功能都是相同的也就是节点平等,都可以进行增删改查,比如现在有4个节点,user数据存储在节点1上面,我们可能直接访问到节点1上面获取数据,也可能是访问到节点2上面,然后节点2去节点1上面拿数据,然后在从节点2返回回来。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

这才是马云

这才是马云

陈伟 / 浙江人民出版社 / 2011-5 / 30.00元

“幽默马云”、“开心马云”、“顽皮马云”、“狂妄马云”等。《这才是马云》从各个角度揭开了千面马云的真面目,告诉你一个与想象中大不一样的马云。这不只是一本书,更像一部喜剧电影,让你通过声音、色彩、表情等诸多要素走近马云,感受阿里巴巴。没有冗长的说教,只有让人忍俊不禁的细节;没有高深的理论,只有通俗、诚恳的陈述。作者借幽默平常的琐事,记录下马云“可爱”的一面,看完后让人恍然大悟:原来,马云是这样一个人......一起来看看 《这才是马云》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码