ES提供了Bulk API,可以执行批量操作,Bulk API允许使用在单个步骤中进行多次 create 、 index 、 update 或 delete 请求.牛逼的操作注定了他的不平凡,请求体的格式和正常的不一样~
说明
- 这种格式类似一个有效的单行
JSON
文档流,它通过换行符(\n)
连接到一起.包括最后一行,这些换行符被用作一个标记,可以有效分隔行. action/metadata
行指定某个文档做什么操作.metadata
指定被操作的文档的属性.如果_Type
,_id
等.request body
内指定文档字段的内容.是CREATE
的必要操作.- 本来打算和上一篇写在一起的.但是关于请求体这个破玩意可把我折腾死了.
TMD
请求方式的坑
先给展示一下我走的几个华丽丽的小坑吧.
HEAD插件
我也是服了这个插件了,它老验证我的多行json流不是个json干嘛!验证个锤子.看到都烦.md好气哦~锤子CEO老罗教育过我们:完成比完美更重要
.LZ日后再来收拾你!
CRUL请求1
然后我的终端给我报了个很好玩的错误~是不是深井冰
CRUL请求2
我整不了你个破终端我就我写个文件请求,tmd
你已经是个成熟的CURL了.你应该学会自己辨别它的类型!!!
解决方法就是正确请求方式的内容了.别慌往下看.
正确请求
CURL
批量创建
请求地址
批量增删改
请求地址
当然也可以再请求地址中指定好索引和文档,例如
请求地址
我看你是个憨憨。