Elasticsearch 的核心概念?
Elasticsearch 面试题发布于
一、核心概念
- Index(索引):类似数据库的表,存储文档。
- Document(文档):JSON 格式的数据,类似行。
- Field(字段):文档中的键值对,类似列。
- Shard(分片):索引分成多个分片,分布在不同节点。
- Replica(副本):分片的副本,高可用。
二、集群
- 多个 Node 组成 Cluster。
- 一个 Master 节点管理集群状态。
- Data 节点存储数据。
- Coordinating 节点路由请求。
三、倒排索引
- ES 用倒排索引实现快速全文检索。
- 词 → 文档列表的映射。
- 分词后建立索引,查询时匹配词,找到文档。
四、写入流程
- 文档写入 Primary Shard。
- 同步到 Replica Shard。
- 写入 TransLog(防止数据丢失)。
- Refresh 后可被搜索(写入内存的 Segment)。
- Flush 把 Segment 持久化到磁盘。
五、搜索流程
- 协调节点把请求广播到所有相关分片。
- 每个分片本地查询,返回 Top N。
- 协调节点合并排序,返回结果。