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返回时,它将提供每个动作的状态(按照同样的顺序),所以你能够看到某个动作成功与否。

  • 相关阅读:
    二十八 .Django中模型类中Meta元对象了解
    【POJ2376】Cleaning Shifts
    【CF600E】Lomsat gelral
    【hiho1035】自驾旅行III
    【模板】manachar
    【hiho1065】全图传送
    【洛谷P1450】硬币购物
    【HDU2204】Eddy's爱好
    【CF208E】Blood Cousins
    【CF451E】Devu and Flowers
  • 原文地址:https://www.cnblogs.com/hcy-fly/p/7986032.html
Copyright © 2011-2022 走看看