Hadoop3:MR程序的数据倾斜问题处理

一、数据倾斜

什么是数据倾斜?
学过Redis集群的都知道数据倾斜这个问题。

就是大量数据,分配不均匀的现象。

二、MR数据倾斜

1、怎么判断出现数据倾斜?

数据频率倾斜——某一个区域的数据量要远远大于其他区域。
数据大小倾斜——部分记录的大小远远大于平均值。
如下图的一个案例:
所有进程都已经完成,MR程序完成度达到99%,只剩下2个Reduce程序还在运行。
在这里插入图片描述

2、解决办法

1、首先检查是否是空值过多造成的数据倾斜
生产环境,可以直接过滤掉空值;如果想保留空值,就自定义分区,将空值加随机数打散。最后再二次聚合。
2、能在map阶段提前处理,最好先在Map阶段处理。如:Combiner、MapJoin
3、设置多个reduce个数。

相关推荐

  1. [HADOOP]数据倾斜避免和处理

    2024-07-18 20:16:03       55 阅读
  2. Hadoop3MR程序压测实验

    2024-07-18 20:16:03       22 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-18 20:16:03       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-18 20:16:03       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-18 20:16:03       62 阅读
  4. Python语言-面向对象

    2024-07-18 20:16:03       72 阅读

热门阅读

  1. c字符串转go字符串

    2024-07-18 20:16:03       21 阅读
  2. Maxwell同步mysql binlog日志执行的几条数据库命令

    2024-07-18 20:16:03       21 阅读
  3. Andrey‘s Tree

    2024-07-18 20:16:03       24 阅读
  4. 2.设计模式--创建者模式--单例设计模式

    2024-07-18 20:16:03       21 阅读
  5. 编程中的智慧之设计模式二

    2024-07-18 20:16:03       23 阅读
  6. 轻松掌握PyTorch CUDA编程,机器学习如虎添翼

    2024-07-18 20:16:03       23 阅读
  7. 【无标题】Elasticsearch for windows

    2024-07-18 20:16:03       24 阅读
  8. 数据仓库实践:了解和定义指标

    2024-07-18 20:16:03       23 阅读
  9. 互联网摸鱼日报(2024-07-18)

    2024-07-18 20:16:03       23 阅读
  10. 【Unity】RPG2D龙城纷争(十三)升级系统

    2024-07-18 20:16:03       27 阅读
  11. 使用 GO 和 Python 分别写爬虫的区别

    2024-07-18 20:16:03       22 阅读
  12. 数据库系统概论:数据库查询语言 SQL

    2024-07-18 20:16:03       22 阅读