我正在尝试构建一个Kylin多维数据集,它将为我获取SmallInt可为空列Col1的平均值。我希望任何空值都不会计入此平均值。当我在Hive中的桌子上工作时,这正是应用AVG函数时得到的结果。但是,当我在此表顶部的Kylin中构建多维数据集时,我的测量列中的所有空值都变为零,然后计入AVG的计算中。有没有办法强制Kylin将null视为null?

最佳答案

您遇到了Apache Kylin的缺陷。我根据您的问题创建了一个JIRA。 https://issues.apache.org/jira/browse/KYLIN-2049

解决方法是,您可以添加一个新维度,即VALID,在Col1不为null时将其设置为1,在Col1为null时将其设置为0。然后查询“AVG(Col1)VALID = 1,其中”应给出预期的结果。

10-05 21:24