Elasticsearch
Elasticsearch 是基于 Apache Lucene 的分布式搜索与分析引擎,适合全文检索、日志检索、聚合分析和近实时搜索。它通常保存可由其他数据源重新构建的搜索副本,不应默认替代关系数据库中的事务数据源。
定位
| 能力 | Elasticsearch | 关系数据库 |
|---|---|---|
| 主要模型 | JSON 文档 | 行与表 |
| 查询优势 | 全文检索、相关性、聚合 | 事务、关联、约束、精确查询 |
| 扩展方式 | 分片水平扩展 | 单机扩展、复制或分库分表 |
| 一致性重点 | 近实时搜索、文档级并发控制 | ACID 事务与约束 |
| 常见角色 | 搜索引擎、分析引擎、日志存储 | 业务事实数据源 |
Elasticsearch 的 Index 只是文档集合,不能简单等同于关系数据库的 Database;Mapping 约束字段的索引方式,也不等同于完整的关系 Schema。旧版 Type 已被移除,现代 API 使用 /<index>/_doc/<id>。
文档入口
| 文档 | 内容 |
|---|---|
| 核心原理 | 倒排索引、节点、分片、副本、写入与搜索流程 |
| 文档、Mapping 与查询 | CRUD、字段类型、分析器和 Query DSL |
| 数据同步与运维 | MySQL 同步、容量、生命周期、备份与排错 |
| 版本演进与升级 | 5.x~9.x 关键变化、旧写法勘误和升级流程 |
Elasticsearch 在集中式日志中的职责见日志平台;那里只讨论日志链路,不重复搜索引擎基础。