bulk 对 JSON串 有着严格的要求。每个JSON串 不能换行 ,只能放在同一行,同时, 相邻的JSON串之间必须要有换行 (Linux下是\n;Window下是\r\n)。bulk的每个操作必须要 一对JSON串 (delete语法除外)。
bulk 请求体如下:
{ action: { metadata }}\n
{ request body }\n
{ action: { metadata }}\n
{ request body }\n
测试索引示例
PUT batch_test
{
“mappings”: {
“properties”: {
“id”:{
“type”: “keyword”
},
“name”:{
“type”: “text”
},
“age”:{
“type”: “integer”
}
}
}
}
测试原始数据
PUT /_bulk
{“index”:{“_index”:“batch_test”,“_id”:“101”}}
{“doc”:{“name”:“测试create数据101”,“age”:“21”}}
{“index”:{“_index”:“batch_test”,“_id”:“102”}}
{“doc”:{“name”:“测试create数据101”,“age”:“22”}}
首次创建

再次创建


再次执行,为重新覆盖整条doc(相当于删除后新增)


更新不存在的文档



再次删除,文档已经不存在,返回错误
