设置如下参数开启动态分区:
hive.exec.dynamic.partition=true
默认值:false描述:是否允许动态分区
hive.exec.dynamic.partition.mode=nonstrict
默认值:strict描述:strict是避免全分区字段是动态的,必须有至少一个分区字段是指定有值的
设置如下参数配置动态分区的使用环境:
hive.exec.max.dynamic.partitions.pernode=100
默认值:100描述:each mapper or reducer可以创建的最大动态分区数
hive.exec.max.dynamic.partitions=1000
默认值:1000描述:一个DML操作可以创建的最大动态分区数
hive.exec.max.created.files=100000
默认值:100000描述:一个DML操作可以创建的文件数
设置如下参数取消一些限制(HIVE 0.7后没有此限制):
hive.merge.mapfiles=false
默认值:true描述:是否合并Map的输出文件
hive.merge.mapredfiles=false
默认值:false描述:是否合并Reduce的输出文件
实例:
insert overwrite table client_uv_daily partition(dt) select userkey, pub, time, opa, ua, mos, softv, net, start_pv, pv, hbtimes, isopa, isupdate, region, endtime, dt from client_uv_daily_reloadtmp where month = '2015-03'