Elasticsearch 范围查询和范围过滤的区别

2024-03-21

我想查询某个日期范围内的elasticsearch文档。我现在有两个选择,两个都适合我。两个都测试过。 1.范围查询 2.范围过滤器

由于我现在的数据集很小,因此我无法测试它们的性能。这两者有什么区别?哪一种会导致更快的文档检索和更快的响应?


查询和过滤器之间的主要区别与评分有关。查询返回每个文档的相对排名分数的文档。过滤器则不然。这种差异使得过滤器变得更快有两个原因。首先,它不会产生计算每个文档分数的成本。其次,它可以缓存结果,因为它不必随时处理分数可能发生的变化 - 它实际上只是一个布尔值,文档是否匹配?

从文档中:

过滤器通常比查询更快,因为:

他们不必计算每个文档的相关性_score — 答案只是一个布尔值“是的,文档与过滤器匹配”或 “不,该文档与过滤器不匹配”。大多数的结果 过滤器可以缓存在内存中,使后续执行速度更快。

实际上,问题是您是否以任何方式使用相关性分数?如果没有,过滤器就是最佳选择。如果这样做,过滤器仍然可能有用,但应该在有意义的地方使用。例如,如果您的文档中有一个语言字段(例如语言:“EN”),并且想要按语言和相关性分数进行查询,您可以将文本搜索的查询与过滤器结合起来语言。过滤器将缓存所有英文文档的文档 ID,然后可以将查询应用于该子集。

我有点过于简化了,但这就是基础知识。阅读此内容的好地方:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-filtered-query.html http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-filtered-query.html

http://www.elasticsearch.org/guide/en/elasticsearch/reference/0.90/query-dsl-filtered-query.html http://www.elasticsearch.org/guide/en/elasticsearch/reference/0.90/query-dsl-filtered-query.html

http://exploringelasticsearch.com/searching_data.html http://exploringelasticsearch.com/searching_data.html

http://elasticsearch-users.115913.n3.nabble.com/Filters-vs-Queries-td3219558.html http://elasticsearch-users.115913.n3.nabble.com/Filters-vs-Queries-td3219558.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Elasticsearch 范围查询和范围过滤的区别 的相关文章

随机推荐

  • CGContext 中的 alpha 像素数

    我有一个掩蔽CGContext有两种类型的像素 颜色和 Alpha 不透明和透明像素 如何计算上下文中 alpha 像素的百分比 我没有测试它 但这应该可以解决问题 只需将 ReportAlphaPercent 传递给 CGImageRef
  • Color.red 和 Color.RED 之间的区别

    定义之间的真正区别是什么setXxx Color red and setXxx Color RED 我在网上找到了以下解释 这都是关于命名约定的吗 Java最初定义了一些小写的颜色常量名称 这违反了常量使用大写的命名规则 它们在所有 Jav
  • 捕获子进程输出[重复]

    这个问题在这里已经有答案了 我了解到 在Python中执行命令时 我应该使用子进程 我想要实现的是通过 ffmpeg 对文件进行编码并观察程序输出 直到文件完成 Ffmpeg 将进度记录到 stderr 如果我尝试这样的事情 child s
  • 如何在 PHP 中从 Linkedin 公司 URL 获取公司 ID?

    我的 Linkedin 公司网址如下 http in linkedin com company abb ABB 有限公司的公司 ID 是277579 基本上您还可以通过以下方式联系 ABBhttp www linkedin com comp
  • 如何设置react-select中可以选择的最大项目数?

    我正在使用反应选择中的 CreatableSelect 组件 现在用户可以选择任意数量的项目 但我希望用户选择的项目不超过 5 个 如何限制可以选择的最大选项数
  • twilio 对话跟踪 ID

    我正在使用 twilio 创建一个聊天应用程序 但在跟踪多个用户之间的对话和多个对话时遇到问题 Example 对话 gt 用户 A 和用户 B 对话2 gt 用户A 和用户B 当用户A在对话2中向用户B发送消息时 当我收到用户A发来的短信
  • 如何每 X 分钟运行一次 cronjob?

    我正在 cronjob 中运行 PHP 脚本 我想每 5 分钟发送一次电子邮件 我当前的 crontab cronjob 10 usr bin php mydomain in cromail php gt dev null 2 gt 1 c
  • 将从 URL 输出的 JSON 保存到文件

    如何将 URL 输出的 JSON 保存到文件中 例如 来自 Twitter 搜索 API 此http search twitter com search json q hi http search twitter com search js
  • 来自 .clone() 的空文件输入

    我正在尝试克隆一个文件输入表单 每次我选择一个文件时then单击 添加更多 克隆文件输入 但它已复制输入中选定的文件
  • 信号 11 SIGSEGV 崩溃 Android

    今天我遇到了一个错误 导致我的 Android 应用程序收到 SIGNAL 11 信号 此错误通常是由于 Android 内部存储未经授权的内存区域访问而发生的 一些可能的场景是Web访问 网络通信 服务器图像下载等 我的是浏览器加载 ur
  • AngularJS 选择的空值

    我找不到优雅的设置方式null值与
  • Azure blob 文件下载链接

    我有一个 blob 已存储在 Azure blob 存储中 使用开发模拟器 它全部保存 我可以在 blob 存储的服务器资源管理器中看到它 file mp3 如果重要的话 然后我在我的网站中链接到它 但是当我单击该链接时 我收到了 206
  • 阻止 Laravel 中的路由会话(自定义按需会话处理)

    我正在使用 laravel 为我的 Android 应用程序构建 API 并将默认会话驱动程序设置为 REDIS 我在这里找到一篇好文章http dor ky laravel prevent sessions for routes via
  • 源文件夹不在Java构建类路径上,正在创建Java包

    我试图在排序下创建一个包合并 但它说 源文件夹不在 Java 构建类路径上 So I right click on sort folder and try to add it to the Java build class path But
  • MSN 是 OpenID 提供商吗?

    MSN 是 OpenID 提供商吗 如果是这样 您知道 URL 是什么样的吗 我正在尝试将 MSN 添加到具有用于登录网站的特殊按钮的提供商列表中 Microsoft 有一个附加到 Windows Live ID 的 OpenID 服务目前
  • Firebase 中 IN 关键字的替代是什么?

    我在 Firebase 中的节点为 users uid phone name 我正在寻找IN执行这里 我想检查我的数据库中存在电话号码列表中的哪些条目 然后获取这些条目 在 SQL 数据库中 等效查询可能是 select phone fro
  • 为什么Webpack的DefinePlugin要求我们将所有内容都包装在JSON.stringify中?

    new webpack DefinePlugin PRODUCTION JSON stringify true VERSION JSON stringify 5fa3b9 BROWSER SUPPORTS HTML5 true TWO 1
  • 在 Hive HQL 中将字符串转换为时间戳

    我有一个像 08 03 2018 02 00 00 这样的字符串 我试图将其转换为时间戳值 我正在使用下面的代码 unix timestamp 08 03 2018 02 00 00 yyyy MM dd T HH mm ss SSSXXX
  • 仅更改所选选项的颜色

    我有一个选择器位于表格单元格中 表格行有颜色 因此使用 CSS 我可以将下拉菜单的背景更改为相同的颜色background color inherit 但是 它会更改所有选项的整个框的颜色 是否可以仅更改所选选项的颜色 如果不使用 CSS
  • Elasticsearch 范围查询和范围过滤的区别

    我想查询某个日期范围内的elasticsearch文档 我现在有两个选择 两个都适合我 两个都测试过 1 范围查询 2 范围过滤器 由于我现在的数据集很小 因此我无法测试它们的性能 这两者有什么区别 哪一种会导致更快的文档检索和更快的响应