- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
腾讯基于 Flink 的实时流计算平台演进之路
首先,我们进入第一个议题。Flink 在腾讯正式被考虑替代 Storm 是在 2021 年。
17 年上半年,我们次要在调研 Flink 替换 Storm 的可行性、特性、功能能否能够满足我们的上线要求。在此之前,我们内部以 Storm 作为实时计算的基础框架也已经有几年的时间了,在使用的过程中也发觉了 Storm 的一些痛点,比如,没有内置形态的支持,没有供应完备的容错力量,没有内置的窗口 API,core API 无法供应 Exactly-once 的语义保证等等。
17 年下半年,我们从社区拉出当时最新的发布分支(1.3.2)作为我们内部的定制开发分支进行开发。作为一个试点,我们选择了内部一个流量较大的业务来进行替换,这个业务在我们内部是以 standalone 的模式部署的,所以我们最后也使用的是 Flink 的 standalone 部署模式。
18 年上半年,我们开头围绕 Flink 进行产品化,打造了一个全流程、一体化的实时流计算平台——Oceanus,来简化业务方构建实时应用的简单度并降低运维成本,这也基本明确了后续我们次要的运转模式是 Flink on YARN。
18 年下半年,我们的 Oceanus 平台已经有足够的力量来构建常见的流计算应用,我们部门内部的一些实时流计算业务也已经在平台上稳定运转,于是我们开头为腾讯云、腾讯其他事业群以及业务线供应流计算服务。同时,我们也将平台整合进我们的大数据套件,为外部私有云客户供应流计算服务。
19 年上半年,我们的次要目标是在 Oceanus 上沉淀并完善上层的场景化服务建设,比如供应在线机器学习、风控等场景化服务。另外,我们也在 Flink 批处理方向发力,利用 Flink 的计算力量来满足跨数据中心,跨数据源的联合分析需求。它可以做到:数据源 SQL 下推,避开集群带宽资源铺张;单 DC 内 CBO(基于代价优化),生成最优的执行方案;跨 DC CBO,依据 DC 负载和资源选择最佳 DC 执行计算,从而获得更好的资源利用和更快的查询功能。以上就是腾讯使用 Flink 的整个历程。
这幅图呈现了,Flink 目前在腾讯内部已经为一些我们耳熟能详的产品供应实时计算的服务。这些产品,包括微信、领取、财付通、腾讯云、QQ、空间、音乐、玩耍、K 歌等等。我们列举其中几个业务的使用案例,微信使用我们的平台来统计伴侣圈的实时扫瞄信息、小玩耍种子用户的 UV 计算、实时恶意流量分析推断、看一看的红点信息;领取用来计算商户买卖相关的统计;音乐用于实时点唱、抢手排行榜等等。
接下来我们来了解一下,目前 Flink 在腾讯使用的现状。目前我们 Oceanus 平台 YARN 集群的 vcore 总数目达到了 34 万,累计的峰值计算力量接近 2.1 亿 / 秒,日均处理消息规模近 20 万亿。到目前为止,腾讯内部除了广告的在线训练业务外,原先运转在 Storm 上的实时流计算业务都已逐渐迁移到 Flink 引擎上,而广告这块的业务估计也会在今年下半年迁移完成。
Oceanus 平台简介
接下来,我们进入其次个议题:简要引见一下我们的 Oceanus 平台。
首先,我们来看一下 Oceanus 平台的全体技术架构。我们内部定制版的 Flink 引擎,称之为 TDFLINK,它跟其他的一些大数据基础设备框架交互并协同支撑了我们上层的 Oceanus 平台,Oceanus 支持画布、SQL 以及 Jar 三种方式构建应用,为了便利业务方降低全体成本,我们还供应了配置、测试、部署等完整配套的功能,在平台之上我们供应了一些领域特定的场景化服务比如 ETL、监控、推举广告等。
下面我们来引见 Oceanus 的几个典型功能。首先这是某个用户的应用列表页。从列表中,我们可以看到应用的当前形态、类型、迭代的版本,它归属于哪个场景等信息。在操作栏,我们可以一键对应用进行启停、调试,查看它的目标信息等,除此之外我们还供应了很多便捷的操作,比如快速复制一个应用,他们都收纳在“更多”菜单按钮中。
这是我们的一个目标分钟级统计的画布应用详情页,我们为 ETL 类型的应用供应了一个通用的 transform 算子。它供应了很多功能细分的可插拔的便捷函数来简化常见的大事解析与提取的简单度。在图中,多种不同类型的目标经过 split 算子分流后将相同的目标进行归类,然后再对它们应用各自的统计规律,就像这里的窗口一样,基本上每个算子都是配置化的。像这品种型的应用我们通过拖拽、配置就可以轻松完成它的构建。
这幅图呈现了我们的目标详情页检查点的目标明细,为了让业务人员更直观地了解它们最关怀的目标信息,我们将一些必要的目标进行了重新梳理并呈现到我们的平台上,这里有些目标直
原创力文档


文档评论(0)