set hive.exec.dynamic.partition=true;(查看语句:set hive.exec.dynamic.partition;)
set hive.exec.dynamic.partition.mode=nonstrict;
注:该属性默认是strict,即限制模式,避免全部分区字段都是动态的。应该必须至少一个分区字段是指定有值即静态的,且必须放在最前面。
设置为nonstrict之后所有的分区都可以是动态的了。
SET hive.exec.max.dynamic.partitions=500000;(如果自动分区数大于这个参数,将会报错)
注:这个属性表示一个DML操作可以创建的最大动态分区数,默认是1000
SET hive.exec.max.dynamic.partitions.pernode=500000;
注:这个属性表示每个节点生成动态分区的最大个数,默认是100
SET hive.exec.max.created.files=150000
注:这个属性表示一个DML操作可以创建的最大文件数,默认是100000
网友评论