【发布时间】:2020-11-26 13:28:19
【问题描述】:
我正在尝试在 Druid 本机查询中创建一个 groupby 虚拟列,如下所示...
{
"queryType": "groupBy",
"dataSource": "trace_info",
"granularity": "none",
"virtualColumns": [
{
"type": "expression",
"name": "tenant",
"expression": "replace(array_offset(tags, array_offset_of(tagNames, 'tenant')), 'tenant:', '')"
},
{
"type": "expression",
"name": "rc",
"expression": "replace(array_offset(tags, array_offset_of(tagNames, 'row_count')), 'row_count:', '')"
}
],
"dimensions": [
"tenant"
],
"aggregations": [
{
"type": "longSum",
"name": "trc",
"fieldName": "rc"
}
],
...
...
...
"intervals": [
"..."
]
}
这会给出所有 row_counts 的 longsum 的单行,就好像 groupBy 列为空一样。
我的用法是否正确,或者这是 Druid 中的一个已知问题。文档说虚拟列可以像普通维度一样使用,但是对于如何甚至缺少工作示例不是很清楚。
谢谢! 帕尼
【问题讨论】:
-
即使我使用默认维度规范来访问虚拟列,结果也是一样的。
-
我已经成功地将 groupBy 与虚拟列一起使用,就像在您的示例中一样。您确定表达式可以正常工作吗?可能值得在更简单的查询中测试该表达式。
-
是的,表达式是正确的,我尝试使用相同的表达式进行扫描查询,虚拟列在结果中显示良好。如果有帮助,我正在使用 Druid 0.18.1。
-
@legoscia 在您的使用中,您是否也在汇总(聚合)一个 VC?
-
请在再次添加之前阅读apache标签说明。如果你这样做:通过编辑问题来描述其相关性,因为目前没有。
标签: group-by druid virtual-column