elasticsearch - 具有时间戳范围的 Elasticsearch 分页
问题描述
Elasticsearch官方文档介绍,elasticsearch可以通过复合聚合实现分页。
复合聚合将多次获取数据以获取所有结果。
所以我的问题是,我可以在执行复合聚合时使用 range from now-1h
to吗?now
如果我能。当每个范围查询不同时,如何组合聚合查询保持源数据不变now
。
如果我不能。我下面的查询没有错误,结果似乎是正确的。
{
"size": 0,
"query": {
"bool": {
"filter": [
{
"range": {
"timestamp": {
"gte": "now-1h"
}
}
}
]
}
},
"aggs": {
"user_device": {
"composite": {
"after": {
"user_name": "alen.lv"
},
"size": 100,
"sources": [
{
"user_name": {
"terms": {
"field": "user_name"
}
}
}
]
},
"aggs": {
"user_mac": {
"terms": {
"field": "user_mac",
"size": 1000
}
}
}
}
}
}
解决方案
推荐阅读
- python - 在 Xcode 中运行 iOS 项目之前运行 python HttpServer
- xcode - Xcode 9 - 标签在 iPhone SE 屏幕尺寸上重叠
- types - Ocaml 一流模块和扩展变体
- javascript - 如何使用“更改”事件侦听器获取选择选项元素的 ID?
- c# - 在页面中更改内容控件的页面
- visual-studio-code - 使用 Xdebug 在 VSCode 中 PHP 调试不起作用
- javascript - 如何在javascript中获取整个控制台输出?
- grails - Grails.如何在项目符号点中格式化字符串
- javascript - SVG 文本溢出和工具提示
- java - 通过java挂起运行可执行文件