我有一个分区的外部表。我每天使用以下语句将文件加载到其中:
set hive.exec.dynamic.partition.mode=nonstrict;
Insert into <external_table> Partition (A,B)
select field_1,field_2 from staging_table;
此插入过程在外部表的hdfs目录下创建零件文件:
<hdfs_path>/A/B/0000111_0
<hdfs_path>/A/B/0000112_0
到目前为止还不错,但最近我注意到它也在分区目录中创建部件文件的副本,例如:
<hdfs_path>/A/B/0000111_0
<hdfs_path>/A/B/0000111_0_copy_1
<hdfs_path>/A/B/0000111_0_copy_2
<hdfs_path>/A/B/0000112_0
<hdfs_path>/A/B/0000112_0_copy_1
有人能给我解释一下吗。我没有对插入过程做任何更改
编辑:
这里也提出了一个类似的问题:hive每个insert查询都会在hdfs文件系统中创建一个新文件,但我无法理解其中的原因
暂无答案!
目前还没有任何答案,快来回答吧!