1.查找数据到本地
insert overwrite local directory '/home/mydir/mydir' select ....
2.增加动态分区
set hive.exec.hynamic.partition=true; -- 开启动态分区
set hive.exec.dynamic.partition.mode=nonstrict; -- 设置为非严格模式
注:这个属性默认是strict,即限制模式,strict是避免全分区字段是动态的,必须至少一个分区字段是指定有值即静态的,且必须放在最前面。设置为nonstrict之后所有的分区都可以是动态的了。
set hive.exec.max.dynamic.partitions.pernode=10000; --默认100,这个属性表示每个节点生成动态分区的最大个数
set hive.exec.max.dynamic.partitions=100000; --这个属性表示一个DML操作可以创建的最大动态分区数,默认是1000
set hive.exec.max.created.files=150000 ; -- 这个属性表示一个DML操作可以创建的最大文件数,默认是10000
3.explain查看hql执行的stage分布与抽象语法树
网友评论