您的位置:首页 > 其它

Zac: 流处理引擎的自动伸缩系统

2018-02-16 00:55 211 查看
(1) 完整阅读:
点击打开链接
(2) 节选:### <a name="Introduction"></a>Introduction
本博文介绍数据流处理引擎Storm的自动伸缩辅助系统的设计、实现。所有内容提炼自硕士毕业论文的部分章节[1],代码已在Github上开源[2]。

自动伸缩性的研究是流处理领域关注的焦点,全自动的流程和行之有效的伸缩策略,及其系统集成是该问题的重点。本文采取了MAPE范式,分别设计监控器、分析计划引擎、执行器,并基于虚拟化技术,设计了资源管理模块,最终开发了自动伸缩子系统Zac。

本文在开源流处理引擎Storm上实现了Zac系统。对Zac系统进行功能性和策略阈值优化算法有效性的实验,实验结果证明,Zac系统能够及时匹配系统吞吐率和输入数据速率,通过细粒度的线程扩展、进程扩展,到粗粒度的机器级别扩展系统,来保障用户体验,通过收缩来节省资源,使得系统以尽可能少的资源满足既定的服务。

### Future work<a name="Future_work"></a>
本博文没有列出**Conclusion**章节(PS: Conclusion都是写给自己看的:)),但是要想在本系统之上做出创新性的研究,需要更清楚地了解目标对象,详情请参考论文。

- 在对自动伸缩系统Zac的实验中,可以使用更丰富的数据输入流模式,例如总是高于或者低于系统静态部署的吞吐率容限,从而增加实验集的完备性(PS: 其实是为了找出Zac系统的不足之处:))。在Monitor的设计中已考虑数据输入率的pattern设计,因此只需要继承并实现相关方法即可无缝加入实验用例中。

- 另外,对于伸缩策略的研究中,主流方向除了基于阈值的伸缩策略,还有使用强化学习训练出策略模型的方法值得关注,考虑到参数空间巨大,搜索算法的有效性和准确性会受到极大挑战,因此使用强化学习方法来习得非静态编码的策略可能会发挥更大的优势(PS: 机器学习是万能挖坑工具:))。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐