1.概述
官网:
Flink 中基于排序的阻塞 Shuffle 实现 - 第一部分
Flink 中基于排序的阻塞 Shuffle 实现——第二部分
Flink 作为批流一体的大数据计算引擎,大规模批数据处理也是 Flink 数据处理能力的重要组成部分。随着 Flink 的版本迭代,其批数据处理能力也在一直加强,sort-shuffle 的引入,使得 Flink 在应答大规模批数据处理工作时更加熟能生巧。
2.数据 Shuffle 简介
数据 shuffle 是批数据处理作业的一个重要阶段,在这一阶段中,上游解决节点的输入数据会被长久化到内部存储中,之后上游的计算节点会读取这些数据并进行解决。这些长久化的数据不仅仅是一种计算节点间的数据交换模式,还在谬误复原中施展着重要作用。
目前,有两种批数据 shuffle 模型被现有的大规模分布式计算零碎采纳,别离是基于 hash 的形式以及基于 sort 的形式:
-
基于
hash
形式的外围思路是将发送给上游不同并发生产工作的数据写到独自的文件中,这样文件自身就成了一个天然的辨别不同数据分区的边界;