Elasticsearch批处理操作——bulk API
2024-08-26 23:25:42
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返回时,它将提供每个动作的状态(按照同样的顺序),所以你能够看到某个动作成功与否。
最新文章
- 《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。附:将来支持Windows 10 IOT
- Reverse Core 第二部分 - 16&;17章 - 基址重定位表&;.reloc节区
- JavaScript DOM编程艺术读书笔记(四)
- 跳转页面,传递参数——android
- [MySQL]导入导出
- Java中this、super用法
- BZOJ 3181 BROJ
- Effective Objective-C 2.0之Note.04
- 九款酷炫基于jquery实现的应用及源码
- 用C语言扩展Python的功能
- I/O多路转接之select
- Demo_塔防(自动生成怪物,导航,炮塔攻击,怪物掉血死忙)
- java.sql.SQLException: ORA-00604: 递归 SQL 级别 1 出现错误
- java学习笔记(13) —— google GSON 实现json转化方法
- asp.net webapi参数绑定
- perl Mail::Sender模块发送邮件
- go语言nsq源码解读二 nsqlookupd、nsqd与nsqadmin
- 在windows+eclipse+git遇到的未修改文件被标记为已修改的问题
- 【转】JRXlsExporter.setParameter常用参数说明
- linux中文件多行合并为一行的例子