在配置单元中加载MAP数据类型

时间:2014-08-23 00:01:57

标签: hive

我正在尝试存储在两个级别聚合的键值数组。我的数据如下所示。

I1 I2 Key Val

L1 C1 K1 V1

L1 C2 K2 V2

L1 C2 K3 V3

所以为了存储I2的所有值。我把查询写成

通过I1,I2选择I1,I2,UNION_MAP(MAP(Key,Val))为new_val组

这很有效。

但是当我进行第二级聚合时,地图中的所有数据都会消失到I2。我在下面提供的查询。

从中选择I1,UNION_MAP(MAP(I2,new_val)) (选择I1,I2,UNION_MAP(MAP(Key,Val))作为new_val组,由I1,I2)输出;

这不能给我正确的数据。

我期待数据如下所示

(L1,(C1,(K1,V1)))

(L1,(C2,(K2,V2),(K3,V3))))

有人可以帮助我理解这里的错误

0 个答案:

没有答案