我正在处理一个大的 hive 表(超过 5000 亿条记录)。 处理速度太慢,我想加快速度。 我认为通过添加分区,该过程可能会更有效率。
谁能告诉我该怎么做? 请注意,我的表已经存在。
我的 table :
create table T(
nom string,
prenom string,
...
date string)
按日期字段分区。
谢谢
最佳答案
SET hive.exec.dynamic.partition = true;
SET hive.exec.dynamic.partition.mode = nonstrict;
INSERT OVERWRITE TABLE table_name PARTITION(Date) select date from table_name;
注意: 在分区表的插入语句中,确保您在 select 子句的最后指定分区列。
关于sql - 在现有配置单元表上添加分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34678597/