Elasticsearch 2.x入门与核心概念

需积分: 49 1 下载量 195 浏览量 更新于2024-07-20 收藏 5.04MB PDF 举报
"elasticsearch官方2.x版本文档" Elasticsearch是一个开源的全文搜索引擎,它提供了分布式、实时的数据存储和搜索功能。2.x版本是Elasticsearch的一个重要阶段,该版本在稳定性、性能和功能上都有所提升。以下是对Elasticsearch 2.x版本主要知识点的详细说明: ### 基本概念 1. **集群(Cluster)**:由一个或多个节点(Node)组成,负责数据的存储和检索。 2. **节点(Node)**:运行Elasticsearch实例的服务器,可以加入到集群中。 3. **索引(Index)**:类似于关系数据库中的数据库,用于存储相同类型的数据。 4. **文档(Document)**:索引中的基本存储单元,类似数据库中的记录。 5. **类型(Type)**:索引内部的分类,但在6.x版本后已被弃用,建议使用映射(Mapping)来代替。 6. **分片(Shard)**:索引被分割成若干个可分布的分片,便于在多个节点上分配和并行处理。 ### 安装与配置 1. **安装**: 下载Elasticsearch的二进制包,解压并启动服务。 2. **配置**: 修改`elasticsearch.yml`配置文件,设置集群名、节点角色、内存限制等参数。 3. **运行服务**: 可以通过命令行在Linux或Windows上以服务形式运行Elasticsearch。 ### 数据操作 1. **创建索引**: 使用`PUT`请求创建一个新的索引。 2. **索引文档**: `POST`或`PUT`请求将文档添加到索引中。 3. **查询文档**: 使用`GET`请求从索引中检索文档。 4. **更新文档**: 通过`POST`请求更新已存在的文档。 5. **删除文档**: `DELETE`请求删除指定文档。 6. **批量处理**: 批量处理多个文档的索引、更新和删除操作,提高效率。 ### 探索数据 1. **搜索API**: 使用JSON格式的查询语句进行搜索。 2. **查询语言**: 包括查询DSL(Domain Specific Language),支持布尔操作、短语匹配等。 3. **过滤器**: 用于筛选结果,不参与评分。 4. **聚合(Aggregations)**: 分组和统计数据,如计数、平均值、最大值等。 ### 集群健康与管理 1. **集群健康**: 检查集群的状态,包括绿色、黄色、红色等状态。 2. **列表所有索引**: 获取集群中的所有索引信息。 3. **索引与分片管理**: 创建、删除索引,调整分片数量。 4. **升级**: 提供滚动升级和全集群重启升级策略,确保数据安全。 ### 其他特性 - **备份与恢复**: 通过插件或API进行数据备份和恢复,确保数据安全。 - **插件**: 扩展Elasticsearch的功能,如Kibana、Logstash等。 - **脚本**: 在查询和更新过程中使用脚本执行复杂逻辑。 - **术语向量(Term Vectors)**: 用于获取文档中单词的频率、位置等信息,用于相关性计算。 - **安全性**: 从2.x版本开始,Elasticsearch加强了对安全性的支持,提供身份验证和授权功能。 在升级至更高版本时,需要注意**破坏性变更(Breaking Changes)**,例如: - **Warmers**: 在3.0版本中被移除。 - **REST API、CATAPI**等接口有重大调整。 - **父/子关系(Parent/Child)**: 改进了处理方式。 - **设置(Setting)**、**映射(Mapping)**、**插件(Plugin)**等都有所改变。 了解这些知识点,将有助于深入理解并有效地使用Elasticsearch 2.x版本。