ES学习之集群API

1、查看集群信息:GET /_cat/health?v
这里写图片描述

2、列出所有指标:GET /_cat/indices?v,这里我们先创建一个索引看看查询效果

创建索引:

这里写图片描述

查看指标:5个分片,1个副本,文档数0…

这里写图片描述

3、创建索引:这里健康状态是yellow的原因是,默认分片5个,副本1个,但是这里是单节点的,所以没有其他节点加入集群。导致副本没有分配。
PUT /customer?pretty
GET /_cat/indices?v
这里写图片描述

4、索引文档:现在让我们把一些东西放入我们的客户索引。但是要记住,为了索引一个文档,我们必须告诉Elasticsearch哪一种类型的索引应该去。

PUT /customer/external/1?pretty
{
  "name": "John Doe",
  "age": "18",
  "sex": "man"
}

这里写图片描述

5、删除索引:DELETE /customer?pretty

6、替换数据:如果_id相同则覆盖,否则插入为新数据。

PUT /customer/external/1?pretty
{
  "name": "John Doe",
  "age": "18",
  "sex": "man"
}

索引时,ID部分是可选的。如果未指定,Elasticsearch将生成一个随机ID,然后用它来索引文档。作为索引API调用的一部分,将返回实际的ID Elasticsearch生成(或我们在前面的示例中明确指定的内容)。

此示例显示如何在没有显式ID的情况下为文档建立索引:
这里写图片描述

7、更新文档:除了能够索引和替换文档之外,我们还可以更新文档。但请注意Elasticsearch实际上并没有在原地进行就地更新。无论何时我们进行更新,Elasticsearch都会删除旧文档,然后用一次性应用更新索引新文档。
这里写图片描述

POST /customer/external/4/_update?pretty
{
  "doc": {
    "name": "wangzha",
    "age": "18",
    "sex": "man",
    "address":"jiangsu"
  }
}

这里写图片描述

8、删除文档:DELETE/customer/external/4?pretty
查看_delete_by_queryAPI以删除与特定查询匹配的所有文档。值得注意的是,删除整个索引而不是使用Delete By Query API删除所有文档会更有效率。

9、批处理:
除了能够索引,更新和删除单个文档之外,Elasticsearch还提供了使用_bulkAPI批量执行上述任何操作的功能。此功能非常重要,因为它提供了一种非常高效的机制,尽可能快地完成多项操作,尽可能少的网络往返。

批量API不会因其中一个操作失败而失败。如果一个动作因任何原因失败,它将继续处理其后的其余动作。当批量API返回时,它将为每个操作提供一个状态(按照它发送的相同顺序),以便您可以检查特定操作是否失败。

批量索引两个文档:
这里写图片描述
批量更新一个文档,删除一个文档:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_39471249/article/details/80357429