欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ES学习之集群API

程序员文章站 2022-07-14 22:42:32
...

1、查看集群信息:GET /_cat/health?v
ES学习之集群API

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

创建索引:

ES学习之集群API

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

ES学习之集群API

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

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

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

ES学习之集群API

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的情况下为文档建立索引:
ES学习之集群API

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

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

ES学习之集群API

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

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

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

批量索引两个文档:
ES学习之集群API
批量更新一个文档,删除一个文档:
ES学习之集群API

相关标签: es