Elasticsearch的基本操作:2016-4-6

一:建立一个实例文档
curl -XPUT 'http://localhost:9200/blog/article/1' -d '{"title": "New
version of Elasticsearch released!", "content": "Version 2.2 released
today!", "priority": 10, "tags": ["announce", "elasticsearch", "release"]
}'
返回如下,建立成功
{
"_index":"blog",
"_type":"article",
"
_id":"1",
"_version":1,
"_shards":{
"total":2,
"successful":1,
"failed":0},
"created":true
}
二.使用标识符自动创建文档
curl -XPOST 'http://localhost:9200/blog/article/' -d '{"title": "New
version of Elasticsearch released!", "content": "Version 2.2 released
today!", "priority": 10, "tags": ["announce", "elasticsearch", "release"]
}'
注:要使用POST方法代替上一例子中的PUT 方法
返回如下
{
"_index":"blog",
"_type":"article",
"_id":"AU1y-s6w2WzST_RhTvCJ",
"_version":1,
"_shards":{
"total":2,
"successful":1,
"failed":0},
"created":true
}
三.检索文档
curl -XGET  http://localhost:9200/blog/article/1?pretty
{
  "_index" : "blog",
  "_type" : "article",
  "_id" : "1",
  "_version" : 2,
  "found" : true,
  "_source" : {
    "title" : "New version of Elasticsearch released!",
    "content" : "My quick brown fox eats rabbits on a regular basis.",
    "priority" : "7",
    "tags" : "2017-11-24"
  }
}
检测成功则返回如上,失败则返回如下:
curl -XGET http://localhost:9200/blog/article/2?pretty
返回结果:
{
  "_index" : "blog",
  "_type" : "article",
  "_id" : "2",
  "found" : false
}
四.更新文档
更新文档是一项比较复杂的任务
curl -XPOST 'http://localhost:9200/blog/article/1/_update' -d '{
"script" : "ctx._source.content = new_content"
}'
五.删除文档
curl -XDELETE 'localhost:9200/blog/article/1'
六.版本控制
每次更新文档后,文档版本号自动赠加,当进行操作时提供的参数中的版本号与现有的文档版本号不一致时,返回错误。
curl -XPUT 'localhost:9200/blog/article/10' -d '{"title":"Test document"}'
curl -XPUT 'localhost:9200/blog/article/10' -d '{"title":"Updated test
document"}'
版本号: version 2
使用删除命令,参数中版本号为1,返回错误如下。
curl -XDELETE 'localhost:9200/blog/article/10?version=1'
The response generated by Elasticsearch should be similar to the following one:
{
"error" : {
"root_cause" : [ {
"type" : "version_conflict_engine_exception",
"reason" : "[article][10]: version conflict, current [2], provided
[1]",
"shard" : 1,
"index" : "blog"
} ],
"type" : "version_conflict_engine_exception",
"reason" : "[article][10]: version conflict, current [2], provided
[1]",
"shard" : 1,
"index" : "blog"
},
"status" : 409
}

你可能感兴趣的:(Elasticsearch的基本操作:2016-4-6)