Elasticsearch集群架构

Elasticsearch是一种分布式搜索引擎,基于Apache Lucene构建,支持全文搜索、结构化搜索、分析和实时数据处理。

节点(Node)

节点可以分为以下几种类型:

  • 主节点(Master Node):负责集群的管理任务,如创建和删除索引、跟踪节点的加入和离开等。

  • 数据节点(Data Node):用于存储数据并执行与数据相关的操作(如搜索、聚合和索引)。大多数情况下,数据节点是集群中最重要的节点,因为它们会处理大多数请求。

  • 协调节点(Coordinating Node):负责将请求路由到适当的节点,并将结果聚合返回给客户。协调节点本身不存储任何数据。

  • 热备份节点(Replica Node):不用于主数据存储,而是为主节点分片提供备份。若主节点出现故障,副本将自动替代其功能,保证高可用性。

索引(Index)

索引是存储文档的地方,可以视为一个数据库。每个索引都有一个唯一的名称,用于在搜索时引用。索引中的数据通常以JSON格式存储,并可以通过REST API进行操作。

文档(Document)

文档是Elasticsearch中存储的基本信息单元,通常与数据库中的一行相对应。每个文档都有一个唯一的ID,且以JSON格式存储。文档包含多个字段,这些字段提供了文档的元数据或内容。

类型(Type)

在Elasticsearch 6.x及之前的版本中,类型用于表示一个索引中不同类别的文档。比如,一个用户索引可以包含"用户"和"管理员"类型。然而,从Elasticsearch 7.x版本开始,类型的支持逐渐被取消,每个索引现在应只包含一个类型。

分片(Shard)

分片是索引存储的基本单位。Elasticsearch使用分片来将数据均匀分布到集群中的不同节点上,从而提高处理性能和可扩展性。每个索引可以有多个主分片(primary shard)和副本分片(replica shard)。主分片存储数据,副本分片用于提供数据冗余和负载均衡。

分片副本(Replica Shard)

副本是主分片的副本。Elasticsearch会根据配置为主分片创建副本段,以便在主分片出现故障时,副本可以继续提供服务。此外,副本还用于承担查询负载,提高搜索性能。

相关推荐
ting94520003 小时前
Tornado 全栈技术深度指南:从原理到实战
人工智能·python·架构·tornado
TDengine (老段)5 小时前
从施工监测到运营预警,桥科院用 TDengine 提升桥梁数据管理能力
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
宁波鹿语心理5 小时前
无条件的在场:一项极简亲子依恋修复练习的机制分析与实证观察
大数据
Swift社区8 小时前
鸿蒙 App 架构中的“领域拆分”
华为·架构·harmonyos
Ronny__9 小时前
Koa2 登录系统:Harness 工程 + Cursor 分步实操指南
架构
Cosolar9 小时前
一文吃透 LangChain&LangGraph:设计理念、框架结构与内部组件全拆解
人工智能·面试·架构
Cosolar10 小时前
一文了解Transformer架构:大模型的核心基石与实战全攻略
人工智能·面试·架构
Python私教10 小时前
GenericAgent记忆系统深度解析:四层架构如何让AI拥有永不遗忘的大脑
网络·人工智能·架构
Ronny__10 小时前
Harness 与 Koa2 登录实践(二):小步能跑通——从 `/health` 到会话 Cookie
架构
二哈赛车手11 小时前
新人笔记---ES和kibana启动问题以及一些常用的linux的错误排查方法,以及ES,数据库泄密解决方案[超详细]
java·linux·数据库·spring boot·笔记·elasticsearch