文章目录
1. 什么是Hive的严格模式
- hive中的一种模式,在该模式下禁止一些不好SQL的执行。
2. Hive的严格模式不允许哪些SQL执行
2.1 禁止分区表全表扫描
- 分区表往往数据量大,如果不加分区查询会带来巨大的资源消耗 。例如以下分区表
SELECT DISTINCT(planner_id) FROM fracture_ins WHERE planner_id=5;
- 报错如下:
FAILED: Error in semantic analysis: No Partition Predicate Found for Alias “fracture_ins” Table "fracture_ins
- 解决如下:
SELECT

Hive的严格模式是一种禁止资源消耗大的SQL执行的设置,包括不允许分区表全表扫描、排序不加limit和笛卡尔积。在分区表全表扫描时,未指定分区将导致错误;无limit的排序操作也会被禁止,需添加limit关键字限制返回行数;笛卡尔积操作也会报错,解决方法是避免无连接条件的表连接。开启Hive严格模式以优化集群资源使用。
最低0.47元/天 解锁文章
267

被折叠的 条评论
为什么被折叠?



