[英]remove a jsonObject using updateQuery in elasticSearch JAVA api after filtering
我的ElasticSearch中有很多数据。 例子之一是
{
"_index": "some_index",
"_type": "some_type",
"_id": "AWDpmuZ9u4O0tj_RL7Zr",
"_score": 1,
"_source": {
"avro_schema": "some_data",
"md_type": "AA"
}
我要删除此对象- “ avro_schema”:“ some_data”,。
仅当所有文档中的md_type为AA时。
我想编写一个在ElasticSearch中执行此操作的JAVA API。
到目前为止,我已经做到了。
BoolQueryBuilder query = new BoolQueryBuilder();
query.should(QueryBuilders.boolQuery().must(QueryBuilders.existsQuery("md_type\":\"AA")));
UpdateByQueryRequestBuilder ubqrb = UpdateByQueryAction.INSTANCE.newRequestBuilder(client);
Script script = new Script("ctx._source.remove('avro_schema')");
BulkByScrollResponse response = ubqrb.script(script)
.filter(QueryBuilders.termQuery("md_type", "AA"))
.get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.