上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

毛言粲-Trisk:以Task为中心的流处理动态配置的控制平台.pdf

编号:101864 PDF 58页 2.82MB 下载积分:VIP专享
下载报告请您先登录!

毛言粲-Trisk:以Task为中心的流处理动态配置的控制平台.pdf

1、毛言粲/新加坡国立大学SANE-LabTrisk:以Task为中心的流处理动态配置的控制平台背景:流作业动态调控挑战:兼顾普适、高效和易用设计:以Task为中心的系统设计实现:基于Flink的Barrier机制评估:Trisk与已有系统的性能对比#1#2#3#4#5#1背景:流作业动态调控流处理的大规模运用机器学习数据分析实时交易流式数据流作业(Stream Job)流处理的大规模运用 长期执行 性能需求机器学习数据分析实时交易流式数据流作业(Stream Job)数据抖动流处理的大规模运用动态重配置(reconfiguration)长期执行 数据抖动 性能需求机器学习数据分析实时交易流式数据

2、流作业(Stream Job)流数据的抖动抖动:输入速率数据倾斜*新兴事件输入流*当前执行逻辑无法正确处理的数据。例如:新型诈骗交易不同类型的重配置技术重配置:输入流ScalingLoad BalancingChange of Logic如何动态的检测数据抖动并使用合适的重配置方法来调控流任务?控制器 流作业的动态调控控制器(Controller)1.监听:监听流作业的运行状态 metrics(例:延迟,CPU util,吞吐量,积压等)2.诊断:采用不同的控制策略(control policies)诊断症状(symptoms)3.重配置:使用不同类型的重配置(reconfigurations

3、)方法动态优化流作业ControllerControl policyMetricsReconfigurations控制平面:控制器管理平台控制平面提供了一个动态管理流作业的平台隐藏系统底层处理逻辑简化控制器的设计和开发ControllerControl policyAPIsControl Plane 控制平面MetricsReconfigurations#2挑战:兼顾普适、高效和易用挑战不同类型的控制策略需要使用不同类型的重配置方法普适性重配置的执行应短时间内完成并尽量不阻塞数据处理高效性API简单易用,用户调用时无须知道系统底层逻辑易用性Flink的原生支持提供了CLI来对流作业进行控制,通

4、过对流作业进行重新部署来动态的重配置流作业 优点:普适性 和 易用性(source code update and resubmit)缺点:重新部署开销大耗时长(resource reallocation,state recovery)ControllerControl policyCLIJob ManagerKill and restartFlink的原生支持SavepointJob ManagerFlink的原生支持Job ManagerSnapshotsFlink的原生支持Job ManagerKillFlink的原生支持Job ManagerRestart#3Trisk:以task为中

5、心的流作业控制平面系统结构概览Control PoliciesReconfiguration APIsPrimitive Operation APIsExecution LogicTriskWorkloadsResourcesPrepare-sync-updateTrisk 抽象+原子操作Prepare-sync-update执行流程常用重配置 APIs+原子操作 APIs普适性高效性易用性Trisk工作流程TriskControl PoliciesCompile工作流程User Code工作流程TriskControl Policies1.AbstractionTriskControl Po

6、licies1.Abstraction2.Update Trisk Abstraction工作流程TriskControl Policies1.Abstraction3.Abstraction2.Update Trisk Abstraction工作流程TriskAbstractionPrepare-sync-updatePhysical Execution Graph工作流程PreparePhysical Execution GraphAffected Tasks工作流程Prepare:基于更新后的Trisk abstraction找出被更新的affected tasks,并准备这些task的

7、新的configurationPreparePhysical Execution GraphAffected TasksSync工作流程Sync:为保证数据一致性,执行期间需全局同步流作业,并暂停affected tasksPreparePhysical Execution GraphAffected TasksSync工作流程Sync:为保证数据一致性,执行期间需全局同步流作业,并暂停affected tasks在Flink中,我们通过barrier机制实现此执行同步PreparePhysical Execution GraphAffected TasksSyncUpdate工作流程Upda

8、te:affected tasks将被独立更新,更新完成后继续运行Trisk的三维抽象D1:Execution logicTrisk的三维抽象D1:Execution logicD2:WorkloadsTrisk的三维抽象D1:Execution logicD2:WorkloadsD3:ResourcesTrisk的三维抽象基于Trisk抽象的重配置定义Scaling定义:通过分配resources来部署新的Task(例 T5),并重分配并行任务之间的Workloads(例 T2,T5)Programming APIs high level APIs我们提供了预定义的reconfigurati

9、on APIs,从而用户可以通过调用这些APIs来设计控制策略Programming APIs low level APIs用户也可以通过三种原子操作(low level APIs)来定义新的重配置方法#4Trisk在Flink上的实现Trisk总体系统架构和组件ControllerTrisk RuntimeStreamManager Trisk TriskJobReconfigCoordinatorFlinkPrepare-sync-updateTaskConfigManagerTCMTCMSystem-level executionsRuntime层:封装并提供APIController:

10、用户自定义控制策略+重配置StreamManager:Trisk runtime的后台+为用户提供APIFlink 系统层:执行reconfigurationJobReconfigCoordinator:维护Trisk抽象到Flink物理配置的映射+协调执行reconfigurationTaskConfigManager:管理并更新Task中相应配置Flink内部的组件架构JobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTas

11、kTaskConfigManagerStreamTaskControl LogicPrepare-sync-updateFlink中重配置执行总览TriggerSyncackdeployupdateupdate实现细节Trisk Abstraction我们对Trisk abstraction所包含的configuration和Flink的JobGraph、ExecutionGraph做了映射Synchronization我们通过Flink的barrier机制实现了重配置执行中的同步来保证一致性Primitive Operations我们利用了Flink原有的机制对stream task进行了动

12、态修改。比如,assign Workload是通过:a.State update:重新初始化一个state backendb.Key mapping update:更新上游task的result partition和当前task的input gateJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskPrepareUpdate JobGraph/ExecutionGra

13、phPrepare:更新Flink流作业Execution planPrepare:更新Flink流作业Execution planJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskPrepareMark as affected tasksSynchronize:Flink中的重配置同步JobReconfigCoordinatorJobManagerTaskConfi

14、gManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskSynchronizeInject barrierJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskPass barrierPause Synchronize:Flink中

15、的重配置同步SynchronizeJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskACKSynchronize:Flink中的重配置同步SynchronizeJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerSt

16、reamTaskTaskConfigManagerStreamTaskPass barrierPause Synchronize:Flink中的重配置同步SynchronizeJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskACKACKSynchronize:Flink中的重配置同步SynchronizeJobReconfigCoordinatorJobManage

17、rTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskACKSynchronize:Flink中的重配置同步SynchronizeJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskUpdateUpdate:

18、更新stream taskUpdate new configurationJobReconfigCoordinatorJobManagerTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskTaskConfigManagerStreamTaskUpdateUpdate:更新stream task#4实验结果1.在Trisk上实现的控制器的总体效果如何,是否能满足控制器的优化目标(比如延迟控制)?2.对比已有的重配置执行技术Flink原生支持和前沿的Megaphone机制,Trisk的执

19、行效率如何?实验设置实验环境:Trisk+Flink-1.10.0实验规模:4个节点的Flink standalone cluster,每个TaskManager配置了8个slots。实验应用:Stock-exchange Word-countTrisk下控制策略更容易实现性能目标延迟感知控制器:通过监听输入流数据的输入速率进行动态的重配置(scaling/load balancing)以实现低延迟股票交易。100 行 代码.所有重配置在毫秒级别完成更好的延迟控制Trisk重配置执行时间短对原作业影响最小与 Flink 上的 Megaphone 相比,Trisk 具有最短的完成时间和相对较高的峰值延迟。与 Flink 上的 Megaphone 相比,Trisk 具有最短的完成时间和相对较高的峰值延迟。在重新配置过程中,Trisk 的吞吐量会下降但恢复得比 Flink 快。Trisk重配置执行时间短对原作业影响最小2021-12-05THANKS

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(毛言粲-Trisk:以Task为中心的流处理动态配置的控制平台.pdf)为本站 (云闲) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部