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":""}}
{"name": "John Doe" }
{"index":{"_id":""}}
{"name": "Jane Doe" }
'

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

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

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

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

最新文章

  1. 《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。附:将来支持Windows 10 IOT
  2. Reverse Core 第二部分 - 16&17章 - 基址重定位表&.reloc节区
  3. JavaScript DOM编程艺术读书笔记(四)
  4. 跳转页面,传递参数——android
  5. [MySQL]导入导出
  6. Java中this、super用法
  7. BZOJ 3181 BROJ
  8. Effective Objective-C 2.0之Note.04
  9. 九款酷炫基于jquery实现的应用及源码
  10. 用C语言扩展Python的功能
  11. I/O多路转接之select
  12. Demo_塔防(自动生成怪物,导航,炮塔攻击,怪物掉血死忙)
  13. java.sql.SQLException: ORA-00604: 递归 SQL 级别 1 出现错误
  14. java学习笔记(13) —— google GSON 实现json转化方法
  15. asp.net webapi参数绑定
  16. perl Mail::Sender模块发送邮件
  17. go语言nsq源码解读二 nsqlookupd、nsqd与nsqadmin
  18. 在windows+eclipse+git遇到的未修改文件被标记为已修改的问题
  19. 【转】JRXlsExporter.setParameter常用参数说明
  20. linux中文件多行合并为一行的例子

热门文章

  1. 将传统项目改造为SSM框架的项目
  2. 用MVC导入导出
  3. 预加载(图片,css ,js)
  4. Unity3D游戏GC优化总结---protobuf-net无GC版本优化实践
  5. 调试利器:SSH隧道
  6. 部分小程序无法获取UnionId原因
  7. 谷歌浏览器 插件安装配置Momentum chrome
  8. CCLuaObjcBridge - Lua 与 Objective-C 互操作的简单解决方案
  9. Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!
  10. Hive详解