Elasticsearch 的节点、集群、分片和副本 全面解析

这篇具有很好参考价值的文章主要介绍了Elasticsearch 的节点、集群、分片和副本 全面解析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、节点 (Node)

节点是 Elasticsearch 实例的运行实例,即一个独立的 Elasticsearch 服务进程。每个节点都是一个独立的工作单元,负责存储数据、参与数据处理(如索引、搜索、聚合等)以及参与集群的协调工作。节点可以在物理或虚拟机上单独部署,也可以在同一台机器上运行多个节点(但需注意资源分配)。

节点具有以下特性:

  • 角色:节点可以承担多种角色,包括但不限于:

    • 主节点 (Master Node):负责集群范围内的元数据管理和变更,如索引创建、删除、分片分配等。
    • 数据节点 (Data Node):存储实际数据和相关的索引文件,参与数据的索引、搜索和恢复过程。
    • 协调节点 (Coordinating Node):接收客户端请求,将请求路由至适当的节点,并将结果汇总返回给客户端。每个节点都可以充当协调节点,也可以专门设置某些节点仅作为协调节点。
    • ingest 节点:处理预定义的中间件管道,对数据进行预处理后再索引。
  • 配置:节点通过配置文件或启动参数(如 -E node.name-E node.roles 等)定义其名称、角色、网络绑定等属性。

二、集群 (Cluster)

集群是由一个或多个节点组成的 Elasticsearch 实例集合,它们协同工作,对外表现为单一的搜索和索引服务。集群中的节点通过共享相同的集群名称 (cluster.name) 自动发现彼此并形成集群。

集群的主要特性包括:

  • 一致性:集群内部维护数据的一致性,确保在任何节点上都能获得一致的查询结果。
  • 故障转移:当某个节点失效时,集群通过自动重新分配分片和选举新的主节点来维持服务的连续性。
  • 负载均衡:客户端请求可以被路由到集群中的任意节点,节点间的负载得以均衡。

三、分片 (Shard)

分片是索引内部数据的逻辑分割单元。每个索引可以被划分为多个分片,每个分片都是一个完整的 Lucene 索引,包含索引的一部分数据。

分片的主要作用和特性包括:

  • 水平扩展:通过增加分片数量,将大量数据分散存储在多个节点上,实现数据的水平扩展和查询性能的提升。
  • 数据分布:每个分片可以被分配到集群中的任意节点,Elasticsearch 自动管理分片的分布和平衡。
  • 数据量限制:单个分片有大小限制,合理的分片数量有助于避免单一分片过大导致的性能下降。

四、副本 (Replica)

副本是对主分片的完整复制。每个主分片可以有零个或多个对应的副本分片。副本分片的存在有以下几个重要作用:

  • 数据冗余:副本分片提供了数据的备份,防止主分片数据丢失导致的数据不可用。
  • 高可用性:当主分片不可用时,其对应的副本分片可以被提升为新的主分片,确保服务连续性。
  • 读取性能:副本分片可以分摊查询请求,尤其在只读操作(如搜索)中,显著提高查询响应速度。

五、分片与副本的关系

一个索引由多个主分片和对应的副本分片组成。例如,若一个索引配置了 5 个主分片和每个主分片有 1 个副本,则该索引总共有 10 个分片(5 个主分片 + 5 个副本分片)。这些分片会在集群的节点间进行动态分配和平衡。文章来源地址https://www.toymoban.com/news/detail-859994.html

六、管理与监控

  • 分片分配:通过 Elasticsearch API 或可视化工具(如 Kibana)可以查看分片在节点间的分布情况,以及手动调整分片分配策略。
  • 健康检查:集群健康状态 (cluster health) 可以反映分片的健康状况,包括主分片和副本分片是否可用、是否在正确数量的节点上分布等。
  • 监控:监控分片和副本的状态、数据同步情况、节点负载等指标,有助于及时发现并解决问题,保持集群稳定运行。

到了这里,关于Elasticsearch 的节点、集群、分片和副本 全面解析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • elasticsearch副本和分片

    1.文档冲突 当我们使用index API更新文档,可以一次性读取 修改索引副本 看起来您正在尝试修改一个已经打开的索引的非动态设置index.number_of_shards。在默认情况下,Elasticsearch不允许在索引处于打开状态时修改非动态(不可更改)的设置。 curl -XPOST http://192.168.1.136:9200/es-syslo

    2024年01月17日
    浏览(41)
  • elasticsearch的副本和分片的区别

    es/elasticsearch的副本和分片的区别 一:概念 (1)集群(Cluster): ES可以作为一个独立的单个搜索服务器。不过,为了处理大型数据集,实现容错和高可用性,ES可以运行在许多互相合作的服务器上。这些服务器的集合称为集群。 (2)节点(Node): 形成集群的每个服务器称

    2024年02月11日
    浏览(34)
  • Elasticsearch索引优化指南:分片、副本、mapping和analyzer

    Elasticsearch是一个开源的分布式搜索引擎,它的数据存储和查询速度非常快。然而,在面对大规模的数据集和高并发访问时,Elasticsearch的性能也可能受到一些影响。为了最大程度地提高Elasticsearch的性能,我们需要对索引进行优化。本篇博客将介绍Elasticsearch索引优化的几个关键

    2024年02月20日
    浏览(38)
  • ElasticSearch修改分片数和副本数及增加字段

    一、修改副本数 PUT test/_settings {     \\\"index\\\": {         \\\"number_of_replicas\\\" : 1     } } 二、修改分片数 ElasticSearch中的数据会被分别存储在不同的分片上,索引库的分片数量是在索引库创建的时候通过settings去设置的,如果不设置,分片数默认是5,分片数一旦确定就不能改变。如果

    2024年02月05日
    浏览(38)
  • 【Elasticsearch】索引恢复(recovery)流程梳理之副本分片数据恢复

    也是因为应用新的集群状态触发recovery,进入index阶段 进入translog 阶段。先尝试重放本地的translog到global checkpoint 向primary shard发起start recovery的请求,请求包含replica的localCheckpoint+1。(如果第二步重放translog了,localCheckpoint自然也会增加) 如果开启了soft delete并且索引是7.4版本

    2024年01月20日
    浏览(36)
  • 04_手工画图剖析Elasticsearch核心概念:NRT、索引、分片、副本等

    2.elasticsearch的核心概念 (1)Near Realtime (NRT):近实时, 从写入数据到数据可以被搜索到有一个小延迟(大概1秒);基于es执行搜索和分析可以达到秒级 (2) cluster集群:包括多个节点, 每个节点属于哪个集群是通过一个配置(集群名称,默认是elasticsearch)来决定的, 对于中小型

    2024年02月09日
    浏览(43)
  • ElasticSearch数据库修改分片数、副本数及修改mapping字段

            对于已经存在的索引,副本数可以随时修改。 示例演示如下:         ElasticSearch中的数据会被分别存储在不同的分片上,索引库的分片数量是在索引库创建的时候通过settings去设置的,如果不设置,分片数默认是5,分片数一旦确定就不能改变。分片数量的设

    2024年02月02日
    浏览(41)
  • 【elasticsearch】修改es集群的索引副本数量

    最近海外es集群进行调整,从3节点变成了单节点。所以需要将集群模式改为单点模式,并需要将es 集群的全部索引副本个数改为0,不然会有很多未分配的分片,导致集群状态为 yellow 。 1. 先将现有的index的副本数量为0个 此步骤是为了解决现有的索引副本数。 2. 创建模板匹配

    2024年02月11日
    浏览(39)
  • elasticsearch修改es集群的索引副本数量

    最近es集群进行调整,从2节点变成了单节点。所以需要将集群模式改为单点模式,并需要将es 集群的全部索引副本个数改为0,不然会有很多未分配的分片,导致集群状态为 yellow。 1. 先将现有的index的副本数量为0个 此步骤是为了解决现有的索引副本数。 2. 创建模板匹配所有

    2024年02月08日
    浏览(37)
  • Elasticsearch的集群负载均衡与分片分片

    Elasticsearch是一个分布式、实时的搜索和分析引擎,它可以处理大量数据并提供快速、准确的搜索结果。在大规模应用中,Elasticsearch的性能和可用性是关键因素。为了确保高性能和高可用性,Elasticsearch需要实现集群负载均衡和分片分片。 在本文中,我们将深入探讨Elasticsear

    2024年04月25日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包