Elasticsearch:Async search API
创始人
2024-05-24 16:23:40
0

当我们想要执行持续时间较长的查询时,执行异步操作是一个很好的选择。 在这篇文章中,我们将学习如何管理异步查询。异步操作由 async search API 执行。 异步搜索 API 具有与 _search API 相同的参数,因此你无需构建特殊查询。

在我之前的文章 “Elasticsearch:异步搜索 - async search” 对异步请求有一个描述。我再之前的文章 “Elasticsearch: Python 客户端现在支持异步 I/O” 也对这个 API 在 Python 中的使用进行了描述。在今天的文章中,我们在 Kibana 中来模拟这个请求。

在今天的展示中,我将使用 Elastic Stack 8.6.0 来进行展示。

准备数据

我们使用 Kibana 中自带的数据:

  

这样我们就在 Elasticsearch 中创建了一个叫做 kibana_sample_data_logs 的索引。

异步查询

要运行异步查询,你需要使用 _async_search API 运行它。 让我们运行以下示例:

POST kibana_sample_data_logs/_async_search
{"query": {"match_all": {}}
}

上述命令返回的结果为:

答案与我们习惯在 _search API 中看到的不同。 现在我们有了属于异步搜索 API 的字段。 我将对 is_running 字段进行注释,它表示查询执行状态,结果表明查询已被执行。

我的数据库中的数据很少,因此为了使这个示例更有趣,我将添加参数 wait_for_completion_timeout=0ms。 这表示查询将等待 0 毫秒的响应,因为搜索所花的时间总会大于 0 毫秒,设置为 0 毫秒让我们看看 async_search 是如何工作的。

POST kibana_sample_data_logs/_async_search?wait_for_completion_timeout=0ms

请注意,is_running 为 true,表示查询尚未返回结果,现在我们有了 id 字段。 这个 id 字段允许你检索查询结果并跟踪状态。 

让我们看看查询的状态:

GET _async_search/status/FjBVQV9GTkMxVG9pZWNnYmhaZTVpZXcddFpMeTgyS1JUYWlDZHBzYmtFWW51QTo3OTgzOTA=

上面命令显示的结果为:

状态结果表明查询已执行,我们可以检索结果。

要获得结果,只需运行传递 id 的查询。

GET _async_search/FjBVQV9GTkMxVG9pZWNnYmhaZTVpZXcddFpMeTgyS1JUYWlDZHBzYmtFWW51QTo3OTgzOTA=

这是异步搜索 API 的一个应用程序。 我希望它有用!

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...