动态分区为空

HIVE: hive.error.on.empty.partition

僤鯓⒐⒋嵵緔 提交于 2019-12-03 03:51:25
参考地址:http://www.88cto.com/996962/article/details/32652.html 默认情况下动态分区插入是禁用的,下表是关于动态分区插入的相关配置属性: 配置参数 默认值 描述 hive.error.on.empty.partition false 在动态分区插入产生空结果时是否抛出异常。 hive.exec.dynamic.partition false 是否允许动态分区插入,若允许则设置为true。 hive.exec.dynamic.partition.mode strict 在strict模式 中用户至少指定一个静态分区以防用户不慎覆盖所有分区,在nonstrict模式中所有分区都允许是动态的。 实际项目编程案例: 如果设置: set hive.exec.dynamic.partition.mode=nonstrict; 设置动态分区 set hive.error.on.empty.partition=true; 那么动态分区如果为空,则会报异常。 非常实用~ 可以使用 python subprocess 模块: execute_hql 表示你要执行的 hql 语句 例如: cmd_result = subprocess.call(execute_hql, shell=True) 返回值 0 正常,其他值异常。 ~ 谢谢分享 来源: