hive-insert data into partitioned table:找不到分区

enxuqcxy  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(700)

尝试在配置单元外部分区表中插入新数据时出现问题。
表是按天分区的,我得到的错误是:

FAILED: SemanticException [Error 10006]: Line 1:51 Partition not found ''18102016''

我的问题如下:

ALTER TABLE my_source_table RECOVER PARTITIONS;
INSERT OVERWRITE TABLE my_dest_table PARTITION (d = '18102016')
SELECT
  'III' AS primary_alias_type,
   iii_id AS primary_alias_id,
FROM
   my_source_table
WHERE 
   d = '18102016'

“我的目的地”表已创建为:

CREATE EXTERNAL TABLE my_dest_table (
   primary_alias_type string,
   primary_alias_id
) PARTITIONED BY (d string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION 's3://my_bucket/my_external_tables/'

知道我做错了什么吗?谢谢!

yxyvkwin

yxyvkwin1#

我相信你应该 ALTER TABLE my_source_table RECOVER PARTITIONS; 对目标表执行此操作。

ALTER TABLE my_dest_table RECOVER PARTITIONS;

试试这个。
注意:当然你应该去掉我提到的多余的逗号。这将导致其他解析错误。

相关问题