gpt4 book ai didi

java - 如何通过 bulkrequest 更新嵌套的 elasticsearch 值?

转载 作者:行者123 更新时间:2023-12-05 06:47:32 26 4
gpt4 key购买 nike

我们正在使用 AWS Elasticsearch - 7.7 版本

我已经关注了Update nested field in an index of ElasticSearch with Java API

我有以下 JSON Elasticsearch

 {
"_index": "product",
"_type": "_doc",
"_source": {
"id": 1,
"name": "test",
"properties": [{
"id": 1,
"qty": 10
}]
}
}

我有以下代码

 BulkRequest request = new BulkRequest();
request.add(new UpdateRequest(<ES Endpoint>, 1))
.doc(XContentType.JSON, "name", "TEST 1"));
BulkResponse bulkResponse = restClient.bulk(request, RequestOptions.DEFAULT);

我应该如何更新“属性”值“数量”?

https://www.elastic.co/guide/en/elasticsearch/client/java-api/6.8/java-docs-update.html

最佳答案

您可以传递一个包含所有字段的 map 以在 doc() 调用中更新:

Map doc = new HashMap();
doc.put("name", "TEST 1");
doc.put("qty", 12);
request.add(new UpdateRequest("index", 1)
.doc(XContentType.JSON, doc));

关于java - 如何通过 bulkrequest 更新嵌套的 elasticsearch 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67086527/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com