Hadoop 将分区数据插入分区配置单元表
我已经使用列id为的Pig Multistorage将数据存储在hdfs中 所以数据存储为Hadoop 将分区数据插入分区配置单元表,hadoop,hive,apache-pig,hadoop-partitioning,Hadoop,Hive,Apache Pig,Hadoop Partitioning,我已经使用列id为的Pig Multistorage将数据存储在hdfs中 所以数据存储为 /output/1/part-0000 /output/2/ /output/3/ 现在我已经在配置单元中创建了一个分区表,我想将/output文件夹中的数据加载到此分区表中。有什么方法可以实现这一点吗?首先创建一个临时配置单元表,从中加载清管器输出的所有数据。 然后从临时表加载到实际的分区配置单元表。 如下所示: FROM emp_external temp INSERT OVERWRITE TABL
/output/1/part-0000
/output/2/
/output/3/
现在我已经在配置单元中创建了一个分区表,我想将/output文件夹中的数据加载到此分区表中。有什么方法可以实现这一点吗?首先创建一个临时配置单元表,从中加载清管器输出的所有数据。
然后从临时表加载到实际的分区配置单元表。
如下所示:
FROM emp_external temp INSERT OVERWRITE TABLE emp_partition PARTITION(country) SELECT temp.id,temp.name,temp.dept,temp.sal,temp.country;
否则,您可以浏览Hcatlog以了解这种情况。不确定您是希望将outputfolder(从pig创建)中的数据插入现有表,还是将outputfolder中的数据加载到新的配置单元分区表中 如果要将数据加载到新的配置单元表中,可以创建一个指向输出文件夹的新分区表 如果希望将数据加载到现有配置单元表中,则可以创建一个临时表@Aman mentioed,然后插入目标表 或 您只需将hdfs中的文件从输出/复制到配置单元表位置即可
希望这有助于将配置单元架构分配给pig输出位置,并将分区列(Alter table Add Partition)作为列id。现在两者都是配置单元表,您可以在分区列上使用where子句移动数据