java - 检查Elasticsearch文档是否存在给定值的最有效方法

标签 java elasticsearch search elasticsearch-java-api

我想检查是否存在具有指定值的Elasticsearch文档。最快的检查方式在哪里,因为我只想检查是否存在。
我正在寻找Java实现。

最佳答案

您正在过滤器上下文中查找查询(请参阅documentation),因为Elasticsearch不会计算匹配分数,并将缓存结果。使用查询DS1,查询可能看起来像:

{
  "query": {
    "bool": {
      "filter": {
        "the_field_name": "the_value_to_match"
      }
    }
  }
}

至于Java API,您可以在Elastic文档中找到答案:
https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-compound-queries.html#java-query-dsl-bool-query

关于java - 检查Elasticsearch文档是否存在给定值的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55175922/

相关文章:

php - 在 MYSQL 搜索中使用 URL 参数

search - 用于在 vim 中进行 inc-search 的 Emacs 样式突出显示

search - 在Elasticsearch中存储任意长度的分层数据的最佳方法

java - 为什么 Random::nextInt 不允许在 java 中作为方法引用?

java - Android项目出现问题

Javadoc 和自定义 doclet

elasticsearch - 无法使Elasticsearch过滤器正常工作

java - 为什么我们为包含jar的文件夹设置hadoop_classpath才能运行?

python - 将Elasticsearch查询结果划分成大块?

elasticsearch - ELASTICSEARCH-在嵌套字段上按日期排序聚合