1. 什么是Hive的严格模式
hive中的一种模式,在该模式下禁止一些不好SQL的执行。
2. Hive的严格模式不允许哪些SQL执行
2.1 禁止分区表全表扫描
分区表往往数据量大,如果不加分区查询会带来巨大的资源消耗 。例如以下分区表
报错如下:
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
Hive提供了一个严格模式,可以防止用户执行那些可能意向不到的不好的影响的查询。
通过设置属性hive.mapred.mode值为默认是非严格模式
nonstrict
。开启严格模式需要修改hive.mapred.mode值为
strict
Hive严格模式:提升大数据查询效率与安全性

Hive的严格模式禁止未指定分区的全表扫描、无limit的orderby查询及笛卡尔积,以防止资源过度消耗。开启此模式需将hive.mapred.mode设为strict,保护系统免受潜在的高资源需求查询的影响。
最低0.47元/天 解锁文章
394

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



