默认配置为:

<property><name>hive.mapred.mode</name><value>nonstrict</value><description>The mode in which the Hive operations are being performed.In strict mode, some risky queries are not allowed to run. They include:Cartesian Product.No partition being picked up for a query.Comparing bigints and strings.Comparing bigints and doubles.Orderby without limit.</description>
</property>

设置参数为:

set hive.mapred.mode = strict;

严格模式限制以下查询:

1、笛卡尔积查询:join查询不使用on语句而是使用where语句

关系型数据库的执行优化器可以高效地将where语句转化成on语句,hive并不会执行这种优化。

2、查询没有选择分区:对于分区表,where语句中无分区字段过滤条件

不允许用户扫描所有分区,因为分区表通常数据量巨大,没有限制分区的查询可能会消耗巨大资源。

3、order by没有limit语句:

order by 为了执行排序过程,会将所有的结果数据分发到同一个reducer中进行处理,增加limit语句可以防止reducer额外执行很长一段时间。

4、bigint类型数据与string和double类型比较

hive优化——严格模式相关推荐

  1. 深入浅出学Hive:Hive优化

    目录: 初始Hive Hive安装与配置 Hive内建操作符与函数开发 Hive JDBC Hive参数 Hive高级编程 Hive QL Hive Shell基本操作 Hive优化 Hive体系结构 ...

  2. Hive优化(再一遍系统复习)

    Hive优化(或者面试问你工作中遇到的问题就可以答hive优化) select * 是不走MR程序的 可以开启本地模式local(当文件小于默认128M且文件数少于4个,不走MR) 表的优化 (1) ...

  3. Hive 优化(通用版)

    hive优化 Hive 优化核心思想:把Hive SQL 当做Mapreduce程序去优化 以下SQL不会转为Mapreduce来执行: select仅查询本表字段 where仅对本表字段做条件过滤 ...

  4. 大数据笔记30—Hadoop基础篇13(Hive优化及数据倾斜)

    Hive优化及数据倾斜 知识点01:回顾 知识点02:目标 知识点03:Hive函数:多行转多列 知识点04:Hive函数:多行转单列 知识点05:Hive函数:多列转多行 知识点06:Hive函数: ...

  5. Hive优化笔记(1 - 非数据倾斜)

    目录 列裁剪和分区裁剪 谓词下推 本地模式(local mode) 并行执行 严格模式 Map端聚合 调整mapper数 调整reducer数 小文件合并优化 设置jvm重用 引擎选择 输出结果压缩 ...

  6. 一篇文章让你通透Hive优化

    Hive优化 一.hive参数优化 1.map数优化 2.reduce数优化 3.Fetch抓取(Hive可以避免进行MapReduce) 4 .模式选择  1)本地模式  2)并行模式  3)严格模 ...

  7. Hive优化总结(史上最全)

    Hive优化总结 hive建表设计层面 1.使用分区表优化 分区表 是在某一个或者几个维度上对数据进行分类存储,一个分区对应一个目录.如果筛选条件里有分 区字段,那么 Hive 只需要遍历对应分区目录 ...

  8. Hive优化方法汇总

    Hive优化方法: 1.Fetch抓取 2.本地模式 3.表的优化 (1)小表大表Join(MapJoin) (2)大表Join大表 (3)Group By (4)Count(Distinct)去重统 ...

  9. Hive优化的基本思路

    一.开头 好好理解Map-Reduce过程,多看看执行计划[explain 查询语句],就会更帮帮地理解咯 二.Hive-SQL语句转化成MapReduce 1)Join的实现原理 select u. ...

最新文章

  1. 阿里云高可用-容灾解决方案
  2. 利用Python实现简单的相似图片搜索的教程
  3. 梯度下降中的学习率的作用
  4. 【渝粤题库】陕西师范大学200991教育统计学作业(高起本)
  5. Laravel服务提供者在平台短信服务中的应用
  6. java canvas 画圆_java – 如何在Android中通过canvas绘制圆?
  7. java 加法程序_使用JAVAEE编写简单的加法程序
  8. python机器学习库sklearn——K最近邻、K最近邻分类、K最近邻回归
  9. 【keras】数据增强之---ImageDataGenerator
  10. android实现Materia Design风格APP(一):开篇
  11. PLSQL Developer 安装使用教程详解
  12. 西数硬盘刷新固件_机械硬盘选购:SMR避坑指南
  13. 电脑安装系统时提示“找不到硬盘”如何解决
  14. js正则 保留一位小数或者两位小数
  15. iOS微信实现第三方登录的方法
  16. 数仓4.0(三)------数据仓库系统(续)
  17. EasyX入门和介绍
  18. python科学计算试题_中国大学Python科学计算单元测试答案
  19. idea设置java-google-style
  20. r语言员工离职_使用R机器学习进行员工离职预测系列(一)

热门文章

  1. MacBook上更新hosts文件并使其立刻生效
  2. python爬取appstore的评论数据的步骤_评论抓取:Python爬取微信在APPStore上的评论内容及星级...
  3. baidu patchrom项目 make后刷机包脚本多一个0解决
  4. [C++]判断齐次坐标系中三点是否共线(三个向量是否共面)
  5. Jpress项目学习纪录片(一) -- 环境搭建
  6. TRUNCATE,DORP,DELETE
  7. flv视频播放器停止时带图片
  8. 实例011:养兔子 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
  9. 关于人工智能的思考--以copilot、openAI为例
  10. 吾生也有涯,而知也无涯。