网站大量收购独家精品文档,联系QQ:2885784924

数据仓库Hive应用实战 教案113-116课时:调优数据仓库性能.doc

数据仓库Hive应用实战 教案113-116课时:调优数据仓库性能.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

湖南汽车工程职业学院

教师授课教案

第15周第1-4课时累计116课时

课程名称

数据仓库HIVE应用

授课课题

调优数据仓库性能

授课专业班级

大数据2101班、2102班、2103班

教学目标

1、了解Hive存储优化,能够描述Hive常用的文件存储格式。

2、掌握Hive参数优化,能够灵活使用Hive配置参数优化Hive性能。

3、熟悉HiveQL语句优化技巧,能够描述HiveQL语句优化的方式。

教学要点

教学重点

1、配置MapReduce压缩、Map个数

2、配置Reduce个数

3、配置本地模式

教学难点

1、Hive存储优化

2、配置合并文件

3、配置并行执行

课型

一体化授课

教法与学法(教具)

示范演示法、任务驱动教学法、分组合作教学法

课后作业

完成超星平台作业、看视频熟练操作

教学后记

(教师课后填写)

1、该内容需要对HIVE进行整体把控,学会常见参数的配置,要具备一定的英文功底;

2、鼓励学生要发散思维,学会综合运用所学知识;

3、掌握思维导图对于知识体系构建的重要性。

授课教师

王海霞、黄史记

【课前复习】

Sqoop导入导出的命令?

【作业点评】

展示超星平台学生作业完成情况,并做点评。

【学习目标】

本任务实施以“学生信息系统”项目为实操载体,依次完成配置本地模式、配置strict模式、配置动态分区、配置并行执行、配置Fetch抓取和配置合并文件等操作,最终熟练掌握Hive参数调优方法。

【课程导入】

对Hive来说,初始配置和调优后的配置,两者性能之间的差距非常明显,调优Hive参数是提升Hive性能的重要方式之一。

本任务以“学生信息系统”项目为实操载体,完成理解Hive参数调优的作用,能熟练调优Hive参数提升Hive性能,能熟记调优参数项及参数值等学习目标。

【新课讲授】

一、调优Hive参数

1.配置本地模式

表8-SEQ表8-\*ARABIC1本地模式相关参数项及描述信息表

参数项

参数描述

默认值

hive.exec.mode.local.auto

设置是否开启Hive的本地模式

false

hive.exec.mode.local.auto.inputbytes.max

设置Job输入数据的最大值

134217728

hive.exec.mode.local.auto.input.files.max

设置Job输入文件个数的最大值

4

2.配置strict模式

Hive中有严格模式,由参数项hive.mapred.mode控制,默认处于nostrict非严格模式。

在严格模式下,主要体现在以下三个方面的限制,第一,对分区表的查询必须指定分区字段;第二,查询语句中ORDERBY必须指定LIMIT;第三,禁止执行笛卡尔积查询。

若使用Hive客户端临时配置严格模式,命令如下:

sethive.mapred.mode=strict;

若需要永久配置严格模式,则需要在Hive配置文件中添加如下配置内容:

property

namehive.mapred.mode/name

valuestrict/value

/property

关闭严格模式:

sethive.mapred.mode=nostrict;

【讲练结合】

【例8-1】分别配置非本地模式和本地模式在studentdb数据仓库中查询student表的行数。

在非本地模式查询student表的行数:

sethive.exec.mode.local.auto=false;

SELECTCOUNT(*)FROMstudentdb.student;

图8-SEQ图8-\*ARABIC1非本地模式下执行COUNT(*)函数的时间

在本地模式查询student表行数:

sethive.exec.mode.local.auto=true;

SELECTCOUNT(*)FROMstudentdb.student;

图8-SEQ图8-\*ARABIC2本地模式下执行COUNT(*)函数的时间

从上述图8-1和图8-2两张图的返回结果显示,两种模式下同一执行语句,其执行时间相差约为19s。

【例8-2】分别配置非严格模式和严格模式在studentdb数据仓库中查询分区表phy_course_dynamic_partition中的数据。

在默认的非严格模式查询phy_course_dynamic_partition中的数据:

SELECT*FROMstudentdb.phy_course_dynamic_partition;

图8-SEQ图8-\*ARABIC3非严格模式下查询分区表

在严格模式查询phy_course_dynamic

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档