ElasticSearch:ES的基本概念与基本使用
作者:carzy2024.01.18 04:32浏览量:126简介:ElasticSearch(简称ES)是一个开源的、分布式的、实时的搜索和分析引擎,用于全文搜索、结构化搜索和聚合。本文将介绍ES的基本概念和基本使用方法。
一、ES基础概念
- 索引:索引是ES中的基本概念,它表示一个或多个文档集合。索引是由类型和文档组成的,类型是索引中数据的分类方式,而文档则是类型中的具体数据。在ES中,索引是用于存储和检索数据的核心单元。
- 类型:在ES中,类型是一个或多个字段的集合,用于对数据进行分类。每个类型都有一个或多个字段,字段是用于存储数据的基本单位。类型可以被视为数据库中的表或数据模型。
- 文档:文档是ES中的基本数据单位,它是类型中的一个实例。每个文档都有唯一的标识符,并且包含一个或多个字段及其值。在ES中,文档是用于存储和检索实际数据的主要方式。
- 分片:分片是ES中用于提高数据存储和检索效率的一种机制。它将索引分成多个小的部分,每个部分称为一个分片。分片可以独立地存储在集群中的不同节点上,从而提高系统的可扩展性和容错性。
- 备份:备份是ES中用于提高数据可靠性和可用性的另一种机制。它通过复制分片来创建数据的副本,从而在节点故障或数据丢失的情况下提供数据冗余和恢复能力。
二、ES基本使用 - 安装与部署:首先需要在服务器上安装和部署ES。可以从ES官网下载对应版本的安装包,并按照官方文档的指引进行安装和配置。
- 创建索引:在ES中创建索引需要指定索引的名称、映射和设置。可以通过ES提供的RESTful API或Java API来创建索引。例如,使用RESTful API创建索引的命令如下:
PUT /my_index
{
“mappings”: {
“properties”: {
“name”: {
“type”: “text”
},
“age”: {
“type”: “integer”
}
}
}
} - 插入数据:插入数据是将文档添加到索引中的操作。可以通过ES提供的RESTful API或Java API来插入数据。例如,使用RESTful API插入数据的命令如下:
PUT /my_index/_doc/1
{
“name”: “John”,
“age”: 30
} - 查询数据:查询数据是从索引中检索数据的操作。可以通过ES提供的RESTful API或Java API来查询数据。例如,使用RESTful API查询数据的命令如下:
GET /my_index/_search
{
“query”: {
“match”: {
“name”: “John”
}
}
} - 更新数据:更新数据是修改索引中已有文档的操作。可以通过ES提供的RESTful API或Java API来更新数据。例如,使用RESTful API更新数据的命令如下:
PUT /my_index/_doc/1
{
“name”: “John”,
“age”: 31
} - 删除数据:删除数据是从索引中删除文档的操作。可以通过ES提供的RESTful API或Java API来删除数据。例如,使用RESTful API删除数据的命令如下:
DELETE /my_index/_doc/1
以上就是ES的基本概念和基本使用方法。需要注意的是,这只是ES的入门级介绍,实际上ES还有更多高级特性和功能等待探索和使用。