elasticsearch 自定义ID:
curl -s -XPUT localhost:9200/web -d '
{
"mappings": {
"blog": {
"_id": {
"path": "uuid"
},
"properties": {
"title": {
"type": "string",
"index": "analyzed"
}
}
}
}
}'
启动本地es,然后写入数据,data2.json:
{ "index": { "_index": "web", "_type": "blog", "_id": "123" }} {"title": "But we can update it" } { "index": { "_index": "web", "_type": "blog", "_id": "123" }} { "title": "But we can update it" } { "index": { "_index": "web", "_type": "blog"}} { "title": "But we can update it", "uuid": "3210"}
通过批量插入上述数据:
curl -s -XPOST localhost:9200/_bulk --data-binary @data2.json
{"took":3,"errors":false,"items":[{"index":{"_index":"web","_type":"blog","_id":"123","_version":5,"status":200}},
{"index":{"_index":"web","_type":"blog","_id":"123","_version":6,"status":200}},
{"index":{"_index":"web","_type":"blog","_id":"3210","_version":3,"status":200}}]}
可以看到新生成的文档_id为uuid的数值!