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

相关推荐
洛森唛15 小时前
Elasticsearch DSL 查询语法大全:从入门到精通
后端·elasticsearch
ray_liang16 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Java编程爱好者17 小时前
字节二面:被问“大模型知识过时了怎么解?”,我答“微调”,面试官当场黑脸:“听说过 RAG 吗?”
架构
字节跳动数据平台19 小时前
代码量减少 70%、GPU 利用率达 95%:火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
葫芦的运维日志21 小时前
从手动部署到GitOps只需四步
架构
sumuve21 小时前
从100行到1行:我是如何重构IoT设备实时数据通信的?
架构·响应式设计
得物技术21 小时前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark
koddnty21 小时前
c++协程控制流深入剖析
后端·架构
Mintopia1 天前
Vite 与 Uni-App X 的协作原理:从前端开发到多端运行的桥梁
架构
武子康1 天前
大数据-238 离线数仓 - 广告业务 Hive分析实战:ADS 点击率、购买率与 Top100 排名避坑
大数据·后端·apache hive