- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一部分: Hadoop 计算框架的特性
什么是数据倾斜
由于数据的不均衡原因, 导致数据分布不均匀, 造成数据大量的集中到一点, 造成数据热
点。
Hadoop 框架的特性
1) 不怕数据大,怕数据倾斜
2) jobs 数比较多的作业运行效率相对比较低, 比如即使有几百行的表, 如果多次关联多次
汇总,产生十几个 jobs ,耗时很长。原因是 map reduce 作业初始化的时间是比较长的
3) sum,count,max,min 等 UDAF ,不怕数据倾斜问题 ,hadoop 在 map 端的汇总合并优化, 使
数据倾斜不成问题
4) count(distinct ), 在数据量大的情况下, 效率较低, 因为 count(distinct) 是按 group by 字段
分组,按 distinct 字段排序,一般这种分布方式是很倾斜的。
第二部分:优化的常用手段
优化的常用手段
1) 解决数据倾斜问题
2) 减少 job 数
3) 设置合理的 map reduce 的 task 数,能有效提升性能。
4) 了解数据分布,自己动手解决数据倾斜问题是个不错的选择
5) 数据量较大的情况下,慎用 count(distinct) 。
6) 对小文件进行合并,是行至有效的提高调度效率的方法。
7) 优化时把握整体,单个作业最优不如整体最优。
第三部分: Hive 的数据类型方面的优化
优化原则
按照一定规则分区(例如根据日期)。通过分区,查询的时候指定分区,会大大减少在无
用数据上的扫描 , 同时也非常方便数据清理。
合理的设置 Buckets 。在一些大数据 join 的情况下, map join 有时候会内存不够。如果使
用 Bucket Map Join 的话,可以只把其中的一个 bucket 放到内存中,内存中原来放不下的内
存表就变得可以放下。这需要使用 buckets 的键进行 join 的条件连结,并且需要如下设置
set hive.optimize.bucketmapjoin = true
第四部分: Hive 的操作方面的优化
全排序
Hive 的排序关键字是 SORT BY ,它有意区别于传统数据库的 ORDER BY 也是为了强调
两者的区别– SORT BY 只能在单机范围内排序。
怎样做笛卡尔积
当 Hive 设定为严格模式 (hive.mapred.mode=strict )时,不允许在 HQL 语句中出现笛卡尔
积, MapJoin 是的解决办法。
MapJoin ,顾名思义,会在 Map 端完成 Join 操作。这需要将 Join 操作的一个或多个表完
全 读 入 内 存 MapJoin 的 用 法 是 在 查 询 / 子 查 询 的 SELECT 关 键 字 后 面 添 加 /*+
MAPJOIN(tablelist) */ 提示优化器转化为 MapJoin (目前 Hive 的优化器不能自动优化
MapJoin )其中 tablelist 可以是一个表,或以逗号连接的表的列表。 tablelist 中的表将会读入
内存,应该将小表写在这里在大表和小表做笛卡尔积时,规避笛卡尔积的方法是,给 Join
添加一个 Join key ,原理很简单:将小表扩充一列 join key ,并将小表的条目复制数倍, join
key 各不相同;将大表扩充一列 join key 为随机数。
控制 Hive 的 Map 数
通常情况下,作业会通过 input 的目录产生一个或者多个 map 任务。
主要的决定因素有: input 的文件总个数, input 的文件大小,集群设置的文件块大小 ( 目
前为 128M, 可在 h
您可能关注的文档
- H3C无线AP刷版本教程.pdf
- H42玻璃钢管接口连接检验批质量验收记录.pdf
- HACCP检查记录表分析和总结.pdf
- haccp内审检查表(详细范例).pdf
- haccp在桶装水中应用剖析.pdf
- Hadoop的Kmeans实现分析和总结.pdf
- Hadoop配置讲解分析和总结.pdf
- HastelloyC-276-HastelloyB等耐腐蚀金属材料基础学.pdf
- havegohasgot练习题分析和总结.pdf
- Have-you-ever-done-a-part-time-job教学设计分析和总结.pdf
- 10《那一年,面包飘香》教案.docx
- 13 花钟 教学设计-2023-2024学年三年级下册语文统编版.docx
- 2024-2025学年中职学校心理健康教育与霸凌预防的设计.docx
- 2024-2025学年中职生反思与行动的反霸凌教学设计.docx
- 2023-2024学年人教版小学数学一年级上册5.docx
- 4.1.1 线段、射线、直线 教学设计 2024-2025学年北师大版七年级数学上册.docx
- 川教版(2024)三年级上册 2.2在线导航选路线 教案.docx
- Unit 8 Dolls (教学设计)-2024-2025学年译林版(三起)英语四年级上册.docx
- 高一上学期体育与健康人教版 “贪吃蛇”耐久跑 教案.docx
- 第1课时 亿以内数的认识(教学设计)-2024-2025学年四年级上册数学人教版.docx
文档评论(0)