Hive 如何在impala中实现数据的非规范化

Hive 如何在impala中实现数据的非规范化,hive,impala,Hive,Impala,我们如何在Impala中以以下格式转换数据来实现这一点 表格 键|代码|可操作|不可操作 abcd | A | 1 | 3 abcd | A | 2 | 3 abcd | B1 | 0 | 1 abcd | B2 | 5 | 4 abcd | C1 | 0 | 0 abcd | C2 | 1 | 8 ab12 | A | 0 | 7 ab12 | B1 | 1 | 1 ab12 | B2 | 52 | 23 ab12 | C1 | 555 | 777 非规范化表: 关键| a|u可诉| b1|u

我们如何在Impala中以以下格式转换数据来实现这一点

表格

键|代码|可操作|不可操作

abcd | A | 1 | 3

abcd | A | 2 | 3

abcd | B1 | 0 | 1

abcd | B2 | 5 | 4

abcd | C1 | 0 | 0

abcd | C2 | 1 | 8

ab12 | A | 0 | 7

ab12 | B1 | 1 | 1

ab12 | B2 | 52 | 23

ab12 | C1 | 555 | 777

非规范化表:

关键| a|u可诉| b1|u可诉| b2|u可诉| c1|u可诉| a| b1|u不可诉| b2|u不可诉| c1|u不可诉

abcd | 3 | 0 | 5 | 0 | 1 | 6 | 1 | 4 | 0 | 8


ab12 | 0 | 1 | 52 | 555 | NULL

IMHO这不是规范化--而是聚合+反规范化…不确定前两行的数据要如何去规范化。我使用collect|u list函数和concat|ws来获得非规范化的输出,但面对包含100万条记录的巨大数据集的问题。