3
我在Elasticsearch索引的文件如下:如何使用Elasticsearch Update API更新文檔?
{
_parent: chow-demo
_index: prototype_2013.01.02
_type: chow-clfg
_id: Nx4JcvyxTPujkyy0Jq5BNw
_score: 11.600378
_source: {
chow-clfg: {
@type: chow-clfg
clfg: Cg5iV00z4woYAAAARQ0
@timestamp: 2013-01-02T06:26:00.000Z
count: 1
}
}
}
我試圖通過以下命令來更新計數字段:
curl -XPOST 'localhost:9200/prototype_2013.01.02/chow-clfg/Nx4JcvyxTPujkyy0Jq5BNw/_update' -d '{"script":"ctx._source.chow-clfg.count+=num","params":{"num":1}}'
但是我收到以下錯誤,而不是:
{"error":"RemoteTransportException[[Vesta][inet[/10.15.78.249:9300]][update]]; nested: DocumentMissingException[[prototype_2013.01.02][0] [chow-clfg][Nx4JcvyxTPujkyy0Jq5BNw]: document missing]; ","status":404}
我究竟做了什麼?我在http://www.elasticsearch.org/guide/reference/api/update.html以下的文件,但它不起作用。
而且,我包括父字段:
curl -XPOST 'localhost:9200/prototype_2013.01.02/chow-clfg/Nx4JcvyxTPujkyy0Jq5BNw/_update' -d '{"parent":"chow-demo","script":"ctx._source.chow-clfg.count+=num","params":{"num":1}}'
它仍然沒有奏效。任何人都可以幫助我解決這個錯誤?
你確定您嘗試更新的文檔是否存在? –
當然;它必須存在。不知怎的,文檔並沒有真正顯示它應該如何清晰地編入索引的語法。否則我可能會誤讀文檔。 –
嘗試:'curl -XGET'localhost:9200/prototype_2013.01.02/chow-clfg/Nx4JcvyxTPujkyy0Jq5BNw'',輸出是什麼? 。另外,你使用'ES 0.19 +',對吧? –