es-将遗留的elasticsearch从rest转换为高级客户端

ijxebb2r  于 2021-06-10  发布在  ElasticSearch
关注(0)|答案(0)|浏览(248)

我想知道下面的查询与elastic5-7的等价关系是什么(对我来说无关紧要)
我知道这个查询已经被弃用了,但实际上我正在尝试将遗留的1.7.5集群工作用于高级es集群。我做了一些测试,尽管文档指出它不支持,但我尝试了大多数简单的操作。剩下的是转换一些查询,如下面的示例中所示

{
  "size" : 3000,
  "query" : {
  "filtered" : {
    "filter" : {
      "bool" : {
        "must" : [ {
          "terms" : {
            "source" : [ "o365mail" ]
          }
        }, {
          "range" : {
            "bckdate" : {
              "from" : "1549360021398l",
              "to" : null,
              "include_lower" : true,
              "include_upper" : true
            }
          }
        } ]
      }
    }
  }
  },
  "fields" : "*"
}

到目前为止我试过的是 7.9.3 : https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.9/java-rest-high.html

SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
        BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
        boolQueryBuilder
                .must(QueryBuilders.termsQuery(IndexFields.SOURCE.getIndexName(),Arrays.asList(Source.O365MAIL.toString().toLowerCase())))
                .must(QueryBuilders.rangeQuery("bckdate").gte(1549360021398l).lte(null));

        sourceBuilder.query(boolQueryBuilder);
        SearchRequest sr = new SearchRequest();
        sr.source(sourceBuilder);
        SearchResponse searchResponse2 = client.search(sr, RequestOptions.DEFAULT);

来自调试的查询是:

{
  "bool" : {
    "must" : [
      {
        "terms" : {
          "source" : [
            "o365mail"
          ],
          "boost" : 1.0
        }
      },
      {
        "range" : {
          "bckdate" : {
            "from" : 1549360021398,
            "to" : null,
            "include_lower" : true,
            "include_upper" : true,
            "boost" : 1.0
          }
        }
      }
    ],
    "adjust_pure_negative" : true,
    "boost" : 1.0
  }
}

我想知道它是否是关于遗留代码的过滤器相同,因为响应的数据是非常相同的。
我不需要打破所有的逻辑 Filters 就像在遗留查询中一样。。。
谢谢你的帮助

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题