我正在对一个LONG字段(eventSize)进行多重聚合。
有没有什么方法可以请求另一种格式而不丢失总和聚合输出的精度?
下面是我使用的请求部分和得到的响应。
质询:
"aggs": {
"eventTermsAgg": {
"terms": {
"field": "eventType"
},
"aggs": {
"splitPerDayAgg": {
"date_histogram": {
"field": "date",
"fixed_interval": "1d",
"format": "yyyy-MM-dd"
},
"aggs": {
"eventSizeAgg": {
"sum": {
"field": "eventSize",
"format": "##.00"
}
}
}
}
}
}
}
回复:
"key": "112233",
"doc_count": 123,
"splitPerDayAgg": {
"buckets": [
{
"key_as_string": "2022-12-15",
"key": 123456789,
"doc_count": 3456,
"eventSizeAgg": {
"value": 1.01724077E8,
"value_as_string": "101724077.00"
}
}
我尝试使用“格式”:SUM aggs参数中的“##.00”,但它只返回与string相同的值,丢失了实际总和的精度。
1条答案
按热度按时间zvokhttg1#
在你分享的回答中,我没有看到任何精确性的损失:原始值以E符号
1.01724077E8
表示,其对应于value_as_string
字段中报告的101724077.00
值。但是,我不确定为什么要在LONG值的和中显示小数。