Elasticsearch基本概念- Document

2023-05-08 10:30:33 浏览数 (1)

在Elasticsearch中,Document是最基本的数据单元。它是一个JSON格式的文档,包含了要索引和搜索的数据。每个Document都有一个唯一的ID来标识它,而且必须属于一个索引。

创建Document

要创建一个新的Document,可以使用HTTP PUT请求。下面是一个创建名为my_index的索引并向其中添加一条Document的示例:

代码语言:javascript复制
PUT /my_index/_doc/1
{
  "title": "Elasticsearch Basics",
  "content": "Elasticsearch is a distributed, open source search and analytics engine"
}

在上面的示例中,"PUT"指示创建新的Document,"_doc"是Elasticsearch默认的Document类型,"1"是指Document的唯一ID。请求体中的"title"和"content"字段分别是Document中的数据,可以根据实际情况进行修改。

如果不指定ID,Elasticsearch会自动生成一个唯一ID并分配给新的Document。以下是不指定ID的示例:

代码语言:javascript复制
PUT /my_index/_doc
{
  "title": "Elasticsearch Basics",
  "content": "Elasticsearch is a distributed, open source search and analytics engine"
}

获取Document

可以使用HTTP GET请求来获取单个Document。以下是获取刚才创建的Document的示例:

代码语言:javascript复制
GET /my_index/_doc/1

如果Document存在,Elasticsearch将返回JSON格式的响应,包含Document的数据和元数据。如果Document不存在,将返回404错误。

更新Document

可以使用HTTP POST请求或HTTP PUT请求来更新Document。以下是使用HTTP POST请求更新Document的示例:

代码语言:javascript复制
POST /my_index/_doc/1/_update
{
  "doc": {
    "title": "Elasticsearch Basics",
    "content": "Elasticsearch is a distributed, open source search and analytics engine. It is used for full-text search, structured search, analytics, and more"
  }
}

在上面的示例中,"POST"指示更新现有的Document,"_update"是指使用更新API,"doc"字段包含了要更新的数据。

删除Document

可以使用HTTP DELETE请求来删除单个Document。以下是删除刚才创建的Document的示例:

代码语言:javascript复制
DELETE /my_index/_doc/1

如果Document存在,Elasticsearch将返回一个JSON格式的响应,指示删除成功。如果Document不存在,将返回404错误。

0 人点赞