开发者学堂课程【实时计算 Flink 实战课程:实时计算 Flink 与你相约阿里云】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/330/detail/3704
实时计算 Flink 与你相约阿里云
内容介绍:
一、历史回眸
二、选择理由
三、产品介绍
四、未来可期
一、历史回眸
1. 实时计算发展概要
在2013年,阿里巴巴内部开始上线实时计算场景
2015.7 内部孵化:实时计算平台(内部上线)、双11上线GMV大屏等关键业务
开启了实时计算 Flink 在阿里巴巴发展
2016.7 1.O版本公测:开箱即用一站式开发平台、Galacy(基于 Storm )引擎打通云上环境
相对于其他云上,在这方便建设较早
2016.8 AWS Kinesis Data 、Analytics Welease
2017.8 华为云实时流计算公测
2017.10 2.0版本公测:全托管、Blink 引擎,纯SQL
在大集群的环境下,只推出纯SQL
2018.10 2.0独享模式商业化:全托管、Blink引擎,SOL (UDFI绝力与用户VPC无缝连接
每个用户都有独立的小集群
2019初:腾讯云 Oceanus 公测
2019.9 3.0半托管模式公测:基于Flink引擎,增值插件、中德共建一站式平台VVP、支持Yarn和KBS主流调度职份
用户可以登录 Yarn和KBS 操作和管控任务,也可以享受到一些服务
2020.5 3.0全托管模式公测:基于Flink 引擎,增值插件、中德共建—站式平台VVP、免运维,低成本
2.0资源不足时,扩容慢,不够灵活
3.0目前大力推广的一种模式,也是业界的先行者
2.大事件——中西合璧
中: Blink + RealtimeCompute
德: Apache Flink + Ververica Platform
2019年中德合作后,同一方向,都基于 Apache Flink 作为核心引擎,并添加增值插件,为打造统一的基础引擎
通过增值插件提供商业化能力,打造全球知名品牌 Ververica
主要目标为:
(1)统一的基础引擎 Apache Flink
(2)全球的技术品牌 Ververica
(3)专业的云上产品 RealtimeCompute
3. 社区/企业/产品良性循环
基于 Apache Flink ,是社区,也是发展的土壤,做了一些企业增值,作为商业核心的增值能力,将其产品化到阿里云上,即RealtimeCompute,通过RealtimeCompute对用户的介入,用户的不断反馈,给我们一些性能、功能的问题,丰富了商业化的一些基本功能,功能经过进一步抽象,又反馈到社区,让社区更加繁荣,形成社区、企业、产品的良性循环。
目标:
(1)技术断言
做最好的实时计算
最好用包括性能更强、功能更多,应用性更广
(2)产品 Slogan
实时,即未来
4. 多样的深度用户
2015年开始在云上积累的业务领域与场景,包括实施大屏幕、实时机器学习、实时ETL场景、实时数仓场景,培育出了各个领域的典型用户
互联网娱乐 |
新浪微博 |
虎牙直播 |
斗鱼 |
在线教育 |
VIPKID |
好未来 |
51Talk |
新零售 |
安利 |
居然之家 |
IKEA |
交通出行 |
吉利汽车 |
上汽集团 |
长城汽车 |
金融财富 |
众安保险 |
汇付天下 |
玖富 |
各个领域都有标杆客户,既扩大了对 Flink 的使用,同时宝贵的场景与反馈也促使将 Flink 做得更好,感谢标杆客户的支持,也期待更多的客户加入
二、选择理由
1.选择云上实时计算
业务实时化趋势越来越强,在在线应用、实时风控等各个领域实时计算的发展越来越好,实时需求越来越强,有四个方面的理由。
(1)上云优势
成本:云上趋势,避免自建基础设施
如机房、网络,这些基础设施建设依赖重、工期长、维护成本高
灵活:按需选择产品
线下灵活差,预估不准确,可扩展弹性小
可扩展:资源池化,水平扩展
(2)官方出品
中西合璧,国际化品牌
完全兼容社区,用户作业与问题快速反馈社区
在 Apache Flink 上丰富的增值
增值能力在云上使用场景更为重要,避免用户资源浪费
(3)丰富经验
Alibaba 大规模长时间经验透出
丰富业务场景解决方案
经历多次双11等实战大考
在线应用、在线ML、微服务化、实时风控、实时ETL、实时数仓
业务实时化趋势越来越强
2.多快好省
|
阿里云实时计算(Powered By Ververica) |
Apache Flink |
多 |
产品输出形态多(公有云半托管/全托管;混合云企业版/敏捷版﹔软件化输出﹔专家服务) |
自行部署 |
上下游对接Connector多,包括开源存储以及商业化存储Connectors |
提供社区几个 Connector,远少于企业版本 |
|
系统/业务监控指标多,开箱即用,数百个指标 |
内置监控指标少 |
|
维工具多,无缝对接阿里云运维体系,比如日志对接slsJloss,指标对接ARMS等 |
开源运维工具较少 |
|
快 |
自研 StateBackend(Gemini),平均优于开源性能2倍以上 |
开源 RocksDB/Heap |
sOLTable API算子单独优化。部分性能领先开源3倍以上 |
N/A |
|
版本更新快。Flink 创始团队主导版本开发,部分功能先于社区体验 |
跟随社区版本 |
|
企业级产品支持响应快,规定时间响应用户反馈 |
自行搜索相关文档 |
|
版本Bugflix快,可以先于社区发布Bugfix |
需要等待社区 |
|
好 |
云基础设施集成度高〈包括账号权限、计算/VM、存储/OSS、监控、告警、日志等链路) |
N/A |
支持Yarn/K8S等主流调度系统生产级可用 |
简单可用 |
|
开发运维控制台集成度高(一站式开发/调试f运维) |
N/A |
|
全链路智能诊断工具,提供智能化、自动化运维诊断 |
N/A |
|
对外提供 OpenAPl,供各类业务场景调用 |
无OpenAPI |
|
内置元数据集成,且与 HMS等外界元数据系统打通 |
需自建元数据服务 |
|
sQLe2e开发体验 |
无较好工具 |
|
跟Alink无缝打通 Flink创始团队提供专业技术服务 |
Alink支持不全 开源社区支持 |
|
省 |
单作业粒度 AutoPilot 功能,自动弹性扩缩容,解决业务波峰波谷资源成本问题 |
N/A |
全托管支持按量付费。弹性扩缩容,省机器成本 |
N/A |
|
全托管提供免运维服务,7"24,人力成本节省达数十万/年 |
自运维 |
|
半托管提供专业技术支持,包括问题定位,给出解决方案等 |
自运维 |
|
全链路作业开发、运维管理系统,完整的任务生命周期管理,节省开发人员业务实现成本 |
N/A |
补充:
多:用户需要哪种形态,就需要提供哪种形态,根据用户需求提供
对接上下游多,基本上覆盖了阿里云目前存在的所有的数据存储,经过多次打磨,对于重要的场景,进行了优化,对于系统和业务指标多,使用户更直接的看到整个系统的情况,对接阿里云运维体系,维护自己的任务
快:自研流计算引擎,性能高,版本更新快,有24小时服务,及时解决问题
好:与整个云基础环境的集成,对作业的提交时间等做了深度优化,
提供全链路智能诊断工具,提供智能化、自动化运维诊断
SQL是大数据开发的趋势
省:提供单作业粒度 AutoPilot 功能,随着任务运行,会出现波峰波谷,让用户自动的调节任务,全托管可以节省人力成本,提供更省的服务方式
三、产品介绍
1.产品技术线
整个产品技术线分为四个部分:
最底层为计算资源 Computing Resources ,包括物理机、虚拟机等
其次 Flink 运行需要一套分布式文件系统,文件系统在阿里云上通过OSS、HDFS、S3、GCS 实现
因为是国际化的产品,在其他领域也有其他的系统,对于调度系统,支持了 Yarn 与 K8S 当前两种热门的调度系统,充分满足了不同调度系统体系用户的需求
基于以上几个底层依赖,上层提供了 Ververica Platform ,首先是基于 Apache Flink ,做了增值的插件,在任务管控一层,采用微服务的架构,为用户提供了整个作业生命周期的管理, Web 的开发与查看,最终通过 Gateway 的方式透传给用户。
由于是微服务的方式,可以添加更多的功能进入。
最终的目标:
(1)Enterprise of Apache Flink
(2)一站式实时数据处理、提供更多增值插件
(3)大数据开源商业化新星品牌
2.公上产品形态
产品形态 |
子产品名 |
收费模式 |
主要特点 |
引擎 开发平台 |
优势 |
目标客户 |
服务状态 |
全托管 |
Blink独享集群 |
ECS粒度收费
|
Blink SQL DetaStream/Table API 最小集群:3台4core ECS 与用户VPC无缝打通 接口上与开源Flink不完全兼容 |
Blink Bayes |
定义ETL/实时BI场景,完备Blink SQL及开发平台,大大提高业务开发运维效率 |
专注自身业务发展,免运维,需要使用SQL开发业务逻辑的客户 |
商业化 |
Flink全托管 |
CU粒度收费 |
Flink SQL Datastream/Table API Autopilot 完全兼容开源Flink 按核牧费,成本低 与用户VPC无缝打通Pod粒度弹性,按需使用 |
Flink Ververica Platform(VVP) |
全托管,低成本,完全兼容开源,用户作业Flink作业可平迁,开箱即用的作业管理控制台 |
专注自身业务发展,免运维,希望与Flink社区保持兼容的客户 |
公测中 即将商业化 |
|
半托管 |
Flink版托管/EMR {Flink on Yarn} |
免费(暂定)。仅收 ECS费用 |
DataStream/Table AP1 Flink SQL Autopilot(building) 部署在用户的EMR集群 完全兼容开源Flink 部署在用户VPC中 |
Flink VVP |
对Yarn等Hadoop生态体系友好,整体业务搬站,提供开箱即用的作业管理控制台 |
熟悉Hadoop生态体系,希望独立运行集群,对Yarn集群有定期需求的客户 |
商业化 |
Flink 半托管/ACK {Flink on K8S} |
免费(暂定)。仅收 ECS费用 |
DataStream/Table AP1 Autopilot 部署在用户的ACK集群 完全兼容开源Flink 部署在用户VPC中 |
Flink VVP |
对K8s生态体系友好,高在线混布,提供开箱即用的作业管理控制台 |
熟悉K8s生态体系,希望独立运行集群,对K8s集群有定期需求的客户 |
商业化 |
3.实时打通上下游
打通用户上下游,让数据总线、日志服务、消息队列流进 Flink ,表格存储、关系型数据库等做维表,MaxCompute、OSS等大型的存储在数据量不大的情况下做维表,输出到用户的各种存储系统中,计算 Flink,用户的一部分存储作为上游,另外的存储做维表,在输出到用户的环境中,不需要做数据搬移,自动跟用户的环境打通,完成复杂的计算。
四、未来可期
1.产品功能持续推出
(1)更完备的 SQL 支持
(2)更丰富的 Connector 连接
连接各种用户的上下游设备
(3)更智能的 AutoPilot 能力
(4)更高效的运行性能
(5)更易用的产品交互/SDK
供用户做二次开发
(6)更实用的 debug/troubleshooting 能力
(7)更有效的监控告警
2.产品介绍持续更新
(1)入门篇
①实时计算 Flink 与你相约阿里云
②实时计算典型应用场景及产品概念介绍
③如何开通实时计算 Flink
(2)实操篇
①如何跑通第一个 DataStream 作业
②如何跑通第一个 SQL 作业
③如何使用 AutoPilot对作业自动调优
④如何将实时计算 Flink 与自身环境打通
⑥如何平迁 Flink 任务到实时计算
实时计算典型应用场景实操之实时数致仓
(3)高级篇
①如何做实时计算 Flink 的 troubleshooting
②如何更有效地配置 Flink 任务的内存