在 Elasticsearch Java 客户端中执行 UpdateByQueryRequest

Executing a UpdateByQueryRequest in Elasticsearch Java client

我想 运行 在 Elasticsearch 上进行 update-by-query 调用。我写了如下代码来执行并且有效,

UpdateByQueryRequestBuilder builder = buildUpdateByQueryRequestBuilder();
builder.get();

然而,在代码审查期间,有人告诉我,而不是通过调用 builder.request() 在构建器上调用 get() 来使用 UpdateByQueryRequest class,这有点有意义。

但问题是,我不知道如何执行 UpdateByQueryRequest。我看了在线文档,但是好像没有相关文档。

那么 UpdateByQueryRequestBuilder#get() 是可行的方法还是实际上可以调用 UpdateByQueryRequest

提前致谢。

直接调用builder.get(),这是块执行,可以使用execute with ActionListener异步执行。

也许你可以这样做:

builder.execute(new ActionListner<BulkIndexByScrollResponse> {
   void onResponse(Response response) {
   // do something
   }
   void onFailure(Exception e) {
   // do something
   }
}