我正在尝试获取日期的最大值和最小值。
从文档中,我看不到composite中的max选项:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-composite-aggregation.html#_value_sources
我想要这样的东西:
{
"size":0,
"aggs":{
"intervals":{
"composite":{
"size":10000,
"sources":[
{
"id":{
"terms":{
"field":"id"
}
}
},
{
"minTime": {
"min": {
"script": "doc['createdAt'].value"
}
}
},
{
"maxTime": {
"max": {
"script": "doc['createdAt'].value"
}
}
}
]
}
}
}
}
是否可以添加到此查询中,或者我需要为此单独查询?
复合聚合允许您在存储桶上分页min和max是应用于每个bucket的度量聚合(即度量聚合不能是复合聚合的源),必须作为子聚合添加到复合聚合中,因此您需要执行以下操作:
{
"size": 0,
"aggs": {
"intervals": {
"composite": {
"size": 10000,
"sources": [
{
"id": {
"terms": {
"field": "id"
}
}
}
]
},
"aggs": {
"minTime": {
"min": {
"script": "doc['createdAt'].value"
}
},
"maxTime": {
"max": {
"script": "doc['createdAt'].value"
}
}
}
}
}
}
框架集合由搜索查询选择的所有数据。框架中包含许多构建块,有助于构建复杂的数据描述或摘要。聚合的基本结构如下所示 - 有以下不同类型的聚合,每个都有自己的目的 - 指标聚合 这些聚合有助于从聚合文档的字段值计算矩阵,并且某些值可以从脚本生成。 数字矩阵或者是平均聚合的单值,或者是像一样的多值。 平均聚合 此聚合用于获取聚合文档中存在的任何数字字段的平均值。 例如, 请求正文 响应 如果该值不存在于一
我有一些文件存储在Elasticsearch中,如下所示: 我想得到的是字段1、字段2或字段3对每个文档的最大次数的计数,按日期分组,即。期望结果如下: 我在date上使用了一个术语聚合,但不知道如何比较不同的字段,以便使用Elasticsearch聚合来执行此max and count类型的操作。有什么建议吗?
问题内容: 我似乎无法以某种方式收到包含我的聚合的响应… 使用curl可以按预期工作: 我得到答复: 但是在rails中使用代码: 并在浏览器中呈现 我得到一个空的答复: 如何在这里打印出卷曲的聚集体? 问题答案: 我也在为此而苦苦挣扎,但是现在我发现了如何获得聚合结果。 如果您将 elasticsearch-rails 与 elasticsearch-model gem一起使用,则在 模型上 运
问题内容: 我正在尝试使用以下查询对以下数据进行elasticsearch来执行术语聚合,输出将名称分解为标记(请参见下面的输出)。因此,我尝试将os_name映射为multi_field,但现在无法通过它查询。是否可以有没有令牌的索引?例如“ Fedora Core”? 查询: 数据: 输出: 映射: 问题答案: 实际上,您应该像这样更改映射 并且您的aggs应该更改为:
是否有任何方法可以使用带聚合的弹性搜索进行分页?elasticsearch版本为2.3。以下是查询:
我正在尝试根据以下文档创建复合聚合:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/search-aggregations-bucket-composite-aggregation.html 我基本上遵循这个例子: 但每次尝试运行代码时,无论我尝试在哪个字段上聚合,都会出现以下错误: 我做了一些深入的研究,没有看到其他地方出现