Elasticsearch6.2.2说明文档--数据操作(Document操作)

环境:

       Elasticsearch: 6.2.2

       Kibana: 6.2.2

       os: centos 7

 原文参考地址:https://www.elastic.co/guide/en/elasticsearch/reference/current/_modifying_your_data.html

 原文参考地址:https://www.elastic.co/guide/en/elasticsearch/reference/current/_updating_documents.html

 原文参考地址:https://www.elastic.co/guide/en/elasticsearch/reference/6.2/docs-update-by-query.html

1、数据修改

     上文中演示了如何创建index然后插入doc,再数据已经插入之后如何修改数据呢,参考下面

     命令:

            PUT /customer/_doc/1?pretty
            {
                  "name": "wandy"

            }

     然后GET customer/_doc/1 查看结果:

     

     结果已经成功修改,注意

        1、ES提供的对数据的控制和查询是一个接近实时的,也就意味着,当你修改了数据(新增、修改、删除)以后,你可以认为它有大概1秒钟的延时才能出现在反映到你的搜索结果中,这是和传统SQL的区别

        2、对数据的修改必须带有ID,否则ES会认为是新增数据,然后自动生成对应的ID,另外也可以使用如下方式让ES自动生成新增数据的ID

            POST /customer/_doc?pretty
            {
              "name": "Jane Doe"
            }

2、其他修改方式

    a、POST /customer/_doc/1/_update?pretty
        {
          "doc": { "name": "Jane Doe" }

        }

   b、修改的同时再新增一个字段

        POST /customer/_doc/1/_update?pretty
        {
          "doc": { "name": "Jane Doe", "age": 20 }

        }

   c、脚本的方式

        POST /customer/_doc/1/_update?pretty
        {
          "script" : "ctx._source.age += 5"

        }

3、 ES同时也提供了按照条件更新,就像SQL中的update--where ,使用的是_update_by_query

4、删除document

    命令:DELETE /customer/_doc/2?pretty

5、批量操作(使用_bulk API)

     a、批量插入

            POST /customer/_doc/_bulk?pretty
                {"index":{"_id":"1"}}
                {"name": "John Doe" }
                {"index":{"_id":"2"}}

                { "name": "Jane Doe" }     

        或者包含不指定的ID的

            POST /customer/_doc/_bulk?pretty
                {"update":{"_id":"1"}}
                {"doc": { "name": "John Doe becomes Jane Doe" } }
                {"delete":{"_id":"2"}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值