OmniShuffle Shuffle加速组件特性支持Shuffle密集型作业场景和大数据场景,支持Spark 3.1.1、Spark 3.3.1引擎。
大数据OmniShuffle Shuffle加速组件作为Spark的性能加速组件,通过Spark提供的插件机制,实现Shuffle Manager和Broadcast Manager插件接口,无侵入式替换Spark的原生Shuffle和Broadcast。大数据OmniShuffle Shuffle加速组件通过实现Shuffle Manager插件接口使能In-memory Shuffle,即在内存池中通过内存语义完成Shuffle过程,减少Shuffle数据落盘,降低数据落盘读取、序列化和反序列化、压缩和解压缩带来的时间开销和算力开销。
通过实现Broadcast Manager接口使能基于内存池共享的方式进行变量广播,提升广播变量在各个Executor之间的共享传输效率。同时,大数据OmniShuffle Shuffle加速组件支持RDMA(Remote Direct Memory Access)和TCP两种网络模式。相比TCP,RDMA可提高传输效率,降低对算力的要求,实现节点间数据的高效交换。
RSS模式创新地采用了存算分离架构设计,确保计算节点和存储节点各尽所能,分工协作。通过对SparkShuffle写流程的重写,BoostRSS会将MAP阶段所产生的数据统一保存至RSS节点内,从而把原有的小文件和小I/O操作,聚合成高效的大文件与连续大I/O操作。能够显著增强磁盘读写的效率,减轻计算节点I/O处理压力,进一步释放其计算能力,大大提升整体MapReduce任务的执行性能。
Shuffle应用模式在业务规模较大且计算节点资源有限,可靠性要求高的场景下使用RSS模式。