• 海阔天空
    2021-10-23
    自动倾斜处理后,如何保证同样key的数据在同一个reduce里执行

    作者回复: 实际上,key的分发,与数据倾斜与否,并没有本质是的联系。不论数据是否倾斜,shuffle机制一定保证同样的可以,被分发到同样的reduce task。 不过,关于自动倾斜处理,确实有些地方值得注意。一个是,AQE对于倾斜的处理,是进程内部的。也就是说,一个倾斜的task,可能会被拆成两个或是多个子task,但是这些task,其实都还是在同一个Executor内。 在Join的时候,倾斜的表,会由AQE做倾斜处理;而与他做Join的表,相应的数据分区,是需要进行复制的。这些细节还需要特别注意哈~

    共 3 条评论
    9
  • 小新
    2021-12-02
    感觉这讲深度不够

    作者回复: 感谢老弟的反馈,欢迎老弟批评指正~

    共 2 条评论
    
  • Geek_1e4b29
    2021-10-26
    同问,相同的key如何解决,加问一个,你们的生产上开了这个参数吗,作业有多大,有没什么风险😬

    作者回复: 生产上确实是启用了AQE以及它的3个特性,当然,这里面包含自动倾斜处理。就风险来说,其实要看场景,我能想到的,会有性能隐患的场景在于,就是两张倾斜的大表做Join,这个时候,自动倾斜由于自身的机制,可能并不会带来性能上的提升。这一点,可以参考给“海阔天空”同学的回复哈~ 关于相同的key的问题,也可以参考留给“海阔天空”同学的回复哈~

    
    
  • bian
    2023-05-31 来自黑龙江
    老师,Spark作业输入数据20亿,每条记录都很小,过滤后1.8亿,之后repartition 5000,写入Hdfs,发现总有个别几个任务shuffle read读不完一直卡住,也不报错,没有倾斜问题,也没有特别大的记录,不知道为什么
    
    
  • 唐方刚
    2022-08-13 来自广东
    与广播阈值对比的文件系统和dag中间结果,这两个是同一个级别的概念吗,之前我有碰到过mapjoin的时候,几十M的orc表文件,4G的客户端内存都oom了
    
    