我正在尝试基于两列创建动态分区,并从hdfs位置中存在的文件中加载数据。 但是,当从登台表将数据加载到动态分区表中时,分区中的第二列显示为NULL。有人可以帮忙吗?
登台表定义
create external table staging_table (COL1 double,COL2 string,COL3 double,COL4 bigint,COL5 bigint,COL6 bigint) location 'hdfs://DIRECTORY_PATH_TO_DATA';
启用动态分区
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.exec.dynamic.partition=true;
set hive.exec.max.dynamic.partitions=1000;
set hive.exec.max.dynamic.partitions.pernode=1000;
CREATE EXTERNAL TABLE final_table(COL1 STRING,COL2 BIGINT,COL3 BIGINT,COL4 BIGINT) PARTITIONED BY (COL5 BIGINT,COL6 BIGINT) STORED AS PARQUET LOCATION 'hdfs://HDFS_PATH';
insert into tagger_table_final1 PARTITION(COL5,COL6) SELECT COL1,COL2,COL3,COL4,COL5,COL6 FROM staging_table;
此处,col5值已从登台表正确插入到最终表中,但col6出现为NULL。可以请人帮忙。