Flink Remote Shuffle Flink 任务间数据交换开源项目

我要开发同款
匿名用户2021年12月01日
44阅读
开发技术Java
所属分类大数据、数据处理
授权协议Apache 2.0

作品详情

FlinkRemoteShuffle是一种批场景下利用外部服务完成任务间数据交换的Shuffle实现,本文后续将详细介绍FlinkRemoteShuffle研发的背景,以及FlinkRemoteShuffle的设计与使用。

重要特性存储计算分离:存储计算分离使计算资源与存储资源可以独立伸缩,计算资源可以在计算完成后立即释放,Shuffle稳定性不再受计算稳定性影响。

支持多种部署模式:支持Kubernetes、Yarn以及Standalone环境下部署。

采用了类似FlinkCredit-Based流量控制机制,实现了零拷贝数据传输,最大限度的使用受管理的内存(managedmemory)以避免OOM,提高了系统稳定性与性能。

实现了包括负载均衡、磁盘IO优化、数据压缩、连接复用、小包合并等诸多优化,实现了优秀的性能与稳定性表现。

支持Shuffle数据正确性校验,能够容忍Shuffle进程乃至物理节点重启。

结合FLIP-187:FlinkAdaptiveBatchJobScheduler[11] 可支持动态执行优化,如动态决定算子并发度。

设计思路与原理介绍

参阅此文章:https://www.oschina.net/news/171564/flink-remote-shuffle-open-source

 

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论