Динамическое разбиение с вставкой нулевого значения для второго столбца разбиения - PullRequest
0 голосов
/ 19 декабря 2018

Я пытаюсь создать динамическое разбиение на основе двух столбцов и загрузить данные из файла, который находится в расположении 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.Может кто-нибудь, пожалуйста, помогите.

...