阿里巴巴为什么选择Apache Flink?
极客时间编辑部
讲述:丁婵大小:1.27M时长:02:47
基于 Apache Flink 在阿里巴巴搭建的平台于 2016 年正式上线,并从阿里巴巴的搜索和推荐这两大场景开始实现。目前,阿里巴巴所有的业务,包括阿里巴巴所有子公司都采用了基于 Flink 搭建的实时计算平台。近日,阿里巴巴介绍了他们采用 Apache Flink 的原因。
随着人工智能时代的降临,数据量的爆发,在典型的大数据的业务场景下,数据业务最通用的做法是,选用批处理的技术处理全量数据,采用流式计算处理实时增量数据。在绝大多数的业务场景之下,用户的业务逻辑在批处理和流处理之中往往是相同的。但是,用户用于批处理和流处理的两套计算引擎是不同的。
因此,用户通常需要写两套代码。毫无疑问,这带来了一些额外的负担和成本。阿里巴巴的商品数据处理就经常需要面对增量和全量两套不同的业务流程问题,所以阿里就在思考,能不能有一套统一的大数据引擎技术,用户只需要根据自己的业务逻辑开发一套代码。这样在各种不同的场景下,不管是全量数据还是增量数据,还是实时处理,一套方案就可以全部支持,这就是阿里选择 Flink 的背景和初衷。
目前,开源大数据计算引擎有很多选择,而同时支持流处理和批处理的计算引擎,只有两种选择,一个是 Apache Spark,另一个是 Apache Flink。
从技术,生态等各方面的综合考虑。首先,Spark 的技术理念是基于批来模拟流的计算。而 Flink 则完全相反,它采用的是基于流计算来模拟批计算。
从技术发展的方向看,用批来模拟流有一定的技术局限性,并且这个局限性可能很难突破。而 Flink 基于流来模拟批,在技术上有更好的扩展性。从长远来看,阿里决定用 Flink 做一个统一的、通用的大数据引擎作为未来的选型。
目前,在阿里巴巴的生产环境中,Flink 的计算平台可以实现毫秒级的延迟情况下,每秒钟可以处理上亿次的消息或者事件。
未来,阿里巴巴想要立足于 Flink 的本质,去做一个全能的统一大数据计算引擎,将它在生态和场景上进行落地。另外,还要让 Flink 的生态上有更多语言的支持,不仅仅是 Java、Scala 语言,甚至是机器学习下用的 Python,Go 语言等。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(1)
- 最新
- 精选
- Todd机器学习下在用Go吗1
收起评论