首页 > 编程源码 > Hive学习之路:Hive的数据倾斜

Hive学习之路:Hive的数据倾斜

楼主:资源分享 [官方] · 2020-6-22 ·  浏览5129 · 编程源码 · ID:
1、什么是数据倾斜?
由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点

2、Hadoop 框架的特性
  A、不怕数据大,怕数据倾斜
  B、Jobs 数比较多的作业运行效率相对比较低,如子查询比较多
  C、 sum,count,max,min 等聚集函数,通常不会有数据倾斜问题

文章来源于互联网。
- 版权声明 - 1、本帖所有言论和图片等纯属网友个人意见,与流星社区立场无关;
2、其他单位或个人使用、转载或引用本帖时必须同时征得该帖子作者资源分享流星社区的同意;
3、备注原文地址:https://bbs.liuxingw.com/t/31248.html,可忽略第2条;
4、帖子作者需承担一切因本文发表而直接或间接导致的相关责任;
5、如本帖内容或部分内容转载自其它媒体,这并不代表本站赞同其观点和对其真实性负责;
6、如本帖若为资源类,将仅限用于学习和研究目的,您必须在下载后的24个小时之内,从您安装或使用的设备中彻底删除上述内容;
7、如果您喜欢该程序,请支持正版软件,购买注册,可以得到更好的正版服务;
8、如本帖侵犯到任何版权或违法问题,请立即邮件告知我们,我们将及时予以处理。
161条回复 |  最后回复于2020-6-22

资源分享 [官方]

2、hive.exec.reducers.max(默认为 1009)
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

3、mapreduce.job.reduces=-1(设置一个常量 reducetask 数量)
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

计算 reducer 数的公式很简单: N=min(参数 2,总输入数据量/参数 1) 通常情况下,有必要手动指定 reducer 个数。考虑到 map 阶段的输出数据量通常会比输入有 大幅减少,因此即使不设定 reducer 个数,重设参数 2 还是必要的。
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

依据 Hadoop 的经验,可以将参数 2 设定为 0.95*(集群中 datanode 个数)。
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

九、合并 MapReduce 操作
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

Multi-group by 是 Hive 的一个非常好的特性,它使得 Hive 中利用中间结果变得非常方便。 例如:
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

上述查询语句使用了 multi-group by 特性连续 group by 了 2 次数据,使用不同的 group by key。 这一特性可以减少一次 MapReduce 操作
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

十、合理利用分桶:Bucketing 和 Sampling
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

Bucket 是指将数据以指定列的值为 key 进行 hash,hash 到指定数目的桶中。这样就可以支 持高效采样了。如下例就是以 userid 这一列为 bucket 的依据,共设置 32 个 buckets
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...

资源分享 [官方]

代码如下,
发布于2020-6-22

回复列表

  • 内容加载中...

说点什么...
登录注册 后才可进行评论
签到
56人签到
已签0天
  • 46621帖子
  • 1936580热点量
  • 184871火热值