1
我有一个在弹性搜索中通过查询进行更新的用例。按查询更新以便在弹性搜索中一次更新多个字段
我保持一个文档一样 -
"a" : "1",
"b" : "2",
"version1" : 456
"c" : {
"version2" : 123,
"d" : "3"
}
现在依赖性为我用区分
- 我不是要更新场A,B和VERSION1
- 或者我会更新场d和version2。
我在Update By Query in Elasticsearch using Java得到了部分答案。
我试图像这 -
BulkIndexByScrollResponse r = ubqrb.script(script)
.script(script1)
.script(script2)
.script(script3)
.script(script4)
.filter(qb).get();
事情但是UpdateByQueryRequestBuilder
不允许我给多个脚本,只和最后一个,即script4
使用和休息被忽略。
我也尝试 -
Script script4 = new Script("ctx._source.a=\"abc\",b=\"xyz\"");
但是这其中也失败了。
任何想法可以使用更新的地方做什么。 在此先感谢