In Elasticsearch Ich verwende Upsert ein Dokument zu aktualisieren, die möglicherweise nicht vorhanden:ElasticSearch: Teilweise aktualisieren Sie ein Dokument oder entfernen Sie es. (Das Gegenteil von Upsert)
POST /website/pageviews/1/_update
{
"script" : "ctx._source.online+=1",
"upsert": {
"online": 1
}
}
Da meine Daten ändern wollen oft möchte ich mein Dokument, wenn online == 0
entfernen.
Es wäre nutzlos, update
zu verwenden, wenn ich das Dokument abrufen und online
Wert jedes Mal überprüfen muss, und ich möchte nicht viele Papierkorb-Dokumente ansammeln.
Welches ist der beste Weg, um mein Dokument zu entfernen, wenn online == 0
? Etwas wie:
POST /website/pageviews/1/_update
{
"script" : "ctx._source.online-=1",
"remove_doc": "ctx._source.online == 0"
}