问题标签 [elasticsearch-aggregation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
elasticsearch - Elasticsearch 中的排序
我使用 java api 编写了 elasticsearch 查询,其中每天获取状态计数。
代码:
我正在尝试按包含日期和时间但查询不提供排序结果的 DTCREATED 字段对数据进行排序。我在查询中找不到我缺少的东西。有什么帮助吗?
elasticsearch - Elasticsearch 聚合:成交量加权平均价格
我需要绘制在特定时间范围内具有 a和 a的交易的成交量加权平均 Prive (VWAP) 。price_per_unit
quantitiy
作为聚合的结果,每个桶都date_histogram
应该包含迄今为止发生的所有交易的 VWAP。
我不确定这是否可以使用 Elasticsearch 进行,也不确定处理它的正确方法是什么(比如使用脚本?)?
文档的基本映射trade
非常简单:
鉴于execution_time
应该用于date_histogram
和 交易的总价格是 和 的price_per_unit
乘积quantity
。因此VWAP = sum(price_per_unit * quantity) / sum(quantity)
.
elasticsearch - 在 Elasticsearch 上聚合结果时是否可以返回其他字段?
这是我的索引 PublicationsLikes 的映射:
- id : 字符串
- 帐户:字符串
- api : 字符串
- 日期:日期
我目前正在对 ES 进行聚合,其中我按 id (出版物的)对结果计数进行分组。
返回的“密钥”(id)是一个信息,但我还需要选择发布的其他字段,如帐户和 api。有点像:
我该如何管理?
谢谢。
elasticsearch - 具有过滤计数的全局术语聚合 - Elasticsearch 5
我有存储在 ES 中的产品,我正在尝试按它们的大小聚合它们。我想设计以下行为。对于甚至在查询之外的每个术语,都可以根据查询接收术语计数。
所以查询尺寸 ["S", "M"] 我想收到:
小号:1
米:1
大号:0
这有可能吗?
这是我的设置,我得到以下结果:
小号:1
米:1
但是L完全不见了。
elasticsearch - Elasticsearch 聚合:每个父母的最新孩子的总和
在 Elasticsearch 中有一个父子结构表示一个order
有order_revision
孩子的我想生成一个直方图,price
显示quantity
.
以下聚合基本上有效,但返回所有现有修订的总和。
在最终版本中,它应该只返回每个订单的最新版本(最高/最新)的quantity
字段总和。我不完全确定如何提出这样的聚合,它按分组并只选择最新的孩子,我也不确定这个父子结构是否是对这些数据建模的最佳选择。timestamp
order_id
search - Elasticsearch:在不使用聚合的情况下获取频率计数的替代方法
我们正在尝试使用聚合来获取搜索词的频率计数。由于我们需要获得三个键,因此我们需要获得在搜索方面面临性能下降的频率计数。如何在没有聚合的情况下获得频率计数?请提出一些替代方法。
询问:
{
"aggs": {
"name_exct": {
"filter": {
"term": {
"name_exct": "test"
}
},
"aggs": {
"name_exct_count": {
"terms": {
"field": "name_exct"
}
}
}
},
"CITY": {
"filter": {
"term": {
"CITY": "US"
},
"aggs": {
"CITY_count": {
"terms": {
"field": "CITY"
}
}
}
}
}
}
elasticsearch - Elasticsearch - 部分布尔查询的聚合
假设我有这个布尔查询:
意思是我想匹配所有名字为 Sandra 或姓 Jones 的人。
现在,有什么方法可以对仅匹配第一个词的所有文档执行聚合?
例如,我想获得任何名为 Sandra 的人所拥有的“奖品”的所有独特价值。通常我会这样做:
有没有办法将两者结合起来,所以我只需要执行一个查询,它会返回所有名字为 Sandra 或姓 Jones 的人,并且只对名字为 Sandra 的人进行聚合?
非常感谢!
java - Elasticsearch 聚合总是返回空存储桶 [](elasticsearch 版本 2.4.1)
我有以下代码:
部分回应是:
如您所见,存储桶为空 [],聚合不起作用,但会抛出任何异常。这发生在 elasticsearch 2.4.1 上,相同的代码正在使用 elasticsearch 1.4.1
elasticsearch - 直方图聚合或其他?
aggregation
当我想要与 相同的功能Histogram
但只指定桶数而不是指定间隔时,我应该使用哪个?
比如:给我aggs
价格,然后分成5个桶......
我不想做 min+max aggregation
,然后在发送我的查询之前计算 5 个间隔,因为这意味着服务器上有 1 个额外的查询......首先要求 min+max,然后发送实际查询。
标准直方图 AGGS 查询:
标准结果(最少 10,最多 850 = 2 个桶,因为间隔为 500):
我想要什么(自动范围最小的五个桶:10,最大:850 = 1 个桶间隔为 168):
elasticsearch - Elasticsearch sum 返回浮点字段的四舍五入整数值
我正在尝试获取sum
字段price
和price_department
.
映射是:
问题是总和price_department
是一个整数值。我还试图获取该领域的统计数据。结果是:
aggs
是body
:_
如您所见,sum
ofprice
看起来正确,但sum
and stats
ofprice_department
被四舍五入并以整数形式返回。