无论是动态,还是静态都是需要创建的
动态分区,它并不会自动创建分区
动态分区与静态分区还有一个细微的差别是,静态分区一 定会创建分区,不管SELECT语句的结果有没有数据。而动态分区,只有在SELECT结果的记录数>0的时候,才会创建分区。因此在不同的业务场景下,可能会选择不同的方案。
创建动态分区:
- set hive.exec.dynamic.partition=true;
- set hive.exec.dynamic.partition.mode=nostrick;
- INSERT OVERWRITE TABLE dw_stage.ds_info_msg partition(cal_dt)
- SELECT id
- ,ip
- ,date
- ,status
- FROM dw_stage.tiny_info_msg07;
复制代码
|