zoukankan      html  css  js  c++  java
  • Elasticsearch批处理操作——bulk API

      Elasticsearch提供的批量处理功能,是通过使用_bulk API实现的。这个功能之所以重要,在于它提供了非常高效的机制来尽可能快的完成多个操作,与此同时使用尽可能少的网络往返。

    1、批量索引,即批量添加文档

      以下调用在一次bulk操作中索引了两个文档(ID 1 - John Doe and ID 2 - Jane Doe):

     curl -XPOST 'localhost:9200/customer/external/_bulk?pretty' -d '
             {"index":{"_id":"1"}}
             {"name": "John Doe" }
             {"index":{"_id":"2"}}
             {"name": "Jane Doe" }
             '

    2、以下例子在一个bulk操作中,首先更新第一个文档(ID为1),然后删除第二个文档(ID为2):

     curl -XPOST 'localhost:9200/customer/external/_bulk?pretty' -d '
             {"update":{"_id":"1"}}
             {"doc": { "name": "John Doe becomes Jane Doe" } }
             {"delete":{"_id":"2"}}
             '

    注意上面的delete动作,由于删除动作只需要被删除文档的ID,所以并没有对应的源文档。

        bulk API按顺序执行这些动作。如果其中一个动作因为某些原因失败了,将会继续处理它后面的动作。当bulk API返回时,它将提供每个动作的状态(按照同样的顺序),所以你能够看到某个动作成功与否。

  • 相关阅读:
    笔记44 Hibernate快速入门(一)
    tomcat 启用https协议
    笔记43 Spring Security简介
    笔记43 Spring Web Flow——订购披萨应用详解
    笔记42 Spring Web Flow——Demo(2)
    笔记41 Spring Web Flow——Demo
    Perfect Squares
    Factorial Trailing Zeroes
    Excel Sheet Column Title
    Excel Sheet Column Number
  • 原文地址:https://www.cnblogs.com/hcy-fly/p/7986032.html
Copyright © 2011-2022 走看看