蜂巢收集阵列和计数而无需横向视图

时间:2018-06-20 20:39:07

标签: hive

假设我有一个包含字符串数组的配置单元表。

CREATE TABLE foo (
  arrays array<string>
)
...

我希望使用频率计数来收集最常见的N arrays个值。假设一个表

a,b,c
b,c,d
d,e,f
c,d,e

我想要

select top_elements_with_counts(arrays, 2)

返回

c  3
d  3

因为计数是a:1,b:2,c:3,d:3,e:2,f:1,即“ a”出现一次,“ b”出现两次,等等。

我想避免使用“横向视图”,因为数据变得庞大(并且可能会倾斜)。

我可以使用brickhouse collect UDAFs或其他可以组合使用的东西吗?

我正在使用配置单元1.2.1

0 个答案:

没有答案