Hive从单个表的数据创建/更新多个表

Sri*_*vas 1 hadoop hive mapreduce hiveql

我在hadoop集群中有10个字段的结构化数据.我需要将这些数据更新为多个hive表,其中包含原始数据中存在的字段子集.

例如:假设数据有字段F1,F2,F3 ...... F10.我有表B1包含字段F1,F2.表B2包含F1,F3.表B3含有F2,F4.

我想知道是否有一种方法可以填充表B1,B2,B3中的数据而无需多次读取A中的数据.

仅供参考:我通过吐出到多个表来对数据进行去规范化,因为这些表将具有数百万条记录,并且我稍后将它们聚合以生成一些统计数据.

目前,我正在考虑以下方法.使用map reduce作业读取数据并使用多种输出格式将不同的键组合写入多个文件,并将这些文件中的数据加载到hive表中.请建议是否有更好的方法来做到这一点.

Joe*_*e K 5

Hive 有多表插页:

FROM A
INSERT INTO TABLE B1 SELECT F1, F2
INSERT INTO TABLE B2 SELECT F1, F3
INSERT INTO TABLE B3 SELECT F2, F4;
Run Code Online (Sandbox Code Playgroud)