博客
关于我
ES elasticsearch集群入门
阅读量:269 次
发布时间:2019-03-01

本文共 998 字,大约阅读时间需要 3 分钟。

Elasticsearch 集群技术解析

1. 引言

在单机部署 Elasticsearch 时,虽然能够满足基础的数据检索需求,但在面对高并发、数据量大等复杂场景时,单机部署往往显得力不从心。为了实现数据的高可用性和系统的横向扩展,通常需要搭建 Elasticsearch 集群。通过集群部署,不仅可以有效保障数据的安全性,还能实现对海量数据的高效管理。

2. 核心原理

Elasticsearch 集群的核心原理主要涉及分片(Shard)和副本(Replica)的管理机制。

2.1 分片与副本

每个索引在创建时会被分成多个分片(Shard),默认情况下会创建5个主分片(Primary Shards)。这些主分片会分布式地存储在不同的节点上。需要注意的是,一旦主分片的数量确定后,无法再对其进行修改。

为了保证数据的高可用性,每个主分片都有对应的副本分片(Replica Shards)。副本分片负责数据的容错和负载均衡管理。需要注意的是,主分片和副本分片不能存放在同一台服务器上,以防止数据丢失。

2.2 数据路由

在 Elasticsearch 集群中,数据路由是决定文档存储位置的关键过程。当客户端提交创建文档请求时,Elasticsearch 会根据路由算法确定目标分片。具体来说,路由算法是通过将文档路由值(Routing)进行哈希计算,取余数来确定目标分片。

需要注意的是,路由算法的结果会直接影响文档的存储位置。如果路由算法的计算结果在集群环境中发生变化,可能会导致文档无法找到。

3. 分片机制

在 Elasticsearch 集群中,每个索引都可以被动态分片管理。具体包括以下几个方面:

3.1 主分片与副本分片

  • 主分片:负责存储索引的所有数据。集群中默认创建5个主分片。
  • 副本分片:用于备份主分片的数据。在主分片服务中断时,副本分片可以保证数据的可用性。

3.2 分片的健康状态

  • 如果一个索引只有主分片而没有副本分片,集群的健康状态会显示为黄色。可以通过 header 揿件等工具进行查看。
  • 副本分片的存在保证了在主分片失效时,数据仍然可以被正常访问。

3.3 分片的分布与容错

  • 主分片与副本分片不会放在同一台服务器上,以防止数据丢失。
  • 集群中每个分片的数据分布是负载均衡的,这样可以最大限度地提高集群的吞吐量。

4. 相关信息

转载地址:http://ojhx.baihongyu.com/

你可能感兴趣的文章
NHibernate动态添加表
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
Nhibernate的第一个实例
查看>>
NHibernate示例
查看>>
nid修改oracle11gR2数据库名
查看>>
NIFI1.21.0/NIFI1.22.0/NIFI1.24.0/NIFI1.26.0_2024-06-11最新版本安装_采用HTTP方式_搭建集群_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0_java.net.SocketException:_Too many open files 打开的文件太多_实际操作---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_插入时如果目标表中已存在该数据则自动改为更新数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0058
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_更新时如果目标表中不存在记录就改为插入数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0059
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0_Postgresql和Mysql同时指定库_指定多表_全量同步到Mysql数据库以及Hbase数据库中---大数据之Nifi工作笔记0060
查看>>
NIFI1.21.0最新版本安装_连接phoenix_单机版_Https登录_什么都没改换了最新版本的NIFI可以连接了_气人_实现插入数据到Hbase_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0最新版本安装_配置使用HTTP登录_默认是用HTTPS登录的_Https登录需要输入用户名密码_HTTP不需要---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增加修改实时同步_使用JsonPath及自定义Python脚本_03---大数据之Nifi工作笔记0055
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_插入修改删除增量数据实时同步_通过分页解决变更记录过大问题_01----大数据之Nifi工作笔记0053
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表或全表增量同步_实现指定整库同步_或指定数据表同步配置_04---大数据之Nifi工作笔记0056
查看>>
NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
查看>>