Elasticsearch文档基本操作有哪些

这篇文章将为大家详细讲解有关Elasticsearch文档基本操作有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

成都创新互联公司是一家专业提供灞桥企业网站建设,专注与成都网站设计、网站制作、HTML5、小程序制作等业务。10年已为灞桥众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

基础增删改查

创建文档

// 创建文档,自动生成 id
POST /<索引名>/_doc
{
    "foo": "bar"
}
// 创建文档并指定 id,id 已存在则报错
PUT /<索引名>/_doc/?op_type=create
{
    "foo": "bar"
}
// 创建文档并指定 id,id 已存在则报错
PUT /<索引名>/_create/
{
    "foo": "bar"
}

获取文档

GET /<索引名>/_doc/

修改文档

修改整个文档

PUT /<索引名>/_doc/
{
    "aaa": "bbb"
}

增加字段

POST /<索引名>/_update/
{
    "doc": {
        "newFoo": "newBar"
    }
}

无论哪种修改,文档的 _version 字段都会增加 1。

bulk API

ES 的 bulk API 指的是允许请求者在一次操作中干不同的事的 API。例如,在一次请求中删除 id 为 qqq 的文档并创建 id 为 www 的文档,且新文档的内容为 { "dd": "ff" }

bulk API 支持的操作有:

  • Index

  • Create

  • Update

  • Delete

也就是,支持各类写操作,不支持在同一个请求中读和写。

单条操作失败不影响其他,返回结果包含每一个操作的执行结果。

POST /_bulk
{ "index": { "_index": "myindex", "_id": "3" } }
{ "ccc", "mmm" }
{ "delete": { "_index": "myindex", "_id": "10" } }

上面的操作中,先在索引 myindex 中创建一个 id 为 3 的文档,内容为第 2 行,然后删除索引 myindex 中 id 为 10 的文档。

由于进行了 2 个操作,所以 ResponseBody 是包含 2 个元素的 list,对应每个操作的结果。

批量读取

GET /_mget
{
    "docs": [
        {
            "_index": "myindex",
            "_id": "3"
        },
        {
            "_index": "index22",
            "_id": "234"
        },
    ]
}

返回的 ResponseBody 形如:

{
    "docs": [] // 请求几个文档,这里就是几个
}

批量查找

POST /<索引名>/_msearch
{}
{ "query": { "match_all": {} }, "size": 1 }
{ "index": "index333" }
{ "query": { "match_all": {} }, "size": 2 }

关于“Elasticsearch文档基本操作有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


当前文章:Elasticsearch文档基本操作有哪些
网站URL:http://hbruida.cn/article/ppopoe.html