往届作品回顾 | 第四届实时计算 Flink 挑战赛

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 2022 第四届实时计算 Flink 挑战赛火热报名中,提交截止时间为 10 月 20 日。

2022 第四届实时计算 Flink 挑战赛目前正在火热报名中,参赛项目提交的截止时间为 10 月 20 日,还没报名的小伙伴们要抓紧喽~!

https://tianchi.aliyun.com/competition/entrance/532003/introduction

今年的实时计算 Flink 挑战赛,采用了和去年 Flink Forward Asia Hackathon 相似的开放式命题。为了帮助小伙伴们更好地打开脑洞,我们在此对去年的优秀参赛作品进行回顾。

2021 年的 FFA Hackathon 共有 27 支队伍晋级到决赛阶段,参赛作品主要包括对 Flink 引擎及 Connector 的改造和优化、基于 Flink 的开发及运维平台、Flink 在某个具体领域场景的应用等。

Flink Forward Asia Hackathon (2021)- Apache Flink 骇客松比赛回顾

引擎及 Connector

在改造优化 Flink 引擎及 Connector 的参赛作品中,我们观察到参赛选手们主要关注两个场景,即离线实时、分析服务一体化的一站式数仓场景,以及流式处理中的资源动态自适应。

一站式数仓

在关注一站式数仓场景的参赛作品中,首先要介绍的是我们的冠军作品《基于 Flink 实现 Kafka + Iceberg 的流批一体 Hybrid Storage》。该作品通过对现有 Source 和 Sink 的串联与封装,达到同时读写流存储(Kafka)和表存储(Iceberg)的效果,简化了用户使用 Flink 实现分析服务一体化的复杂度。值得关注的是,该作品与 Flink 社区在今年上半年发布的 Flink Table Store 具有异曲同工之妙,尽管在具体的技术方案上有所区别,其目标都是解决分析服务一体化对于流表二象存储的需求。

img

季军作品《基于 Apache Flink 的批流融合 TableSource》则是关注离线实时一体化的实现,通过在 Source 内部引入轻量级的数据整合算法,在不锁表的前提下,实现数据消费离线转实时的 Exactly-Once 语义。该作品采用的无锁数据整合方案,与 Flink CDC 去年下半年发布的 2.0 版本不谋而合,也由此可见参赛选手对离线实时一体化场景下用户痛点的准确把握。

另一项季军作品《Flink SQL 算子 CDC 订阅》,通过对 Flink SQL 优化器及算子的改造,支持 SQL 任务中间计算结果的跨作业复用。其本质是将算子的状态改造成可供其他作业查询的物化视图,支持通过 Catalog 自动发现可复用的数据,支持全量、增量及全增量自动切换的消费方式。

资源动态自适应

亚军作品《Morphling - Flink 流作业的动态资源预测与快速调整》,根据作业运行时的指标计算单并发算子的最大数据处理能力,从而预测作业的资源需求并作出动态调整。该作品的一大亮点是,支持在作业整体数据处理不停的情况下进行局部的并发调整,具有较高的技术难度。

img

另一参赛作品《Flink 任务自动伸缩服务》采用了相似的预测作业资源的方法,借助 Flink 已有的 Reactive Mode 实现动态资源调整,更加贴合云原生生态体系。有趣的是,该作品使用一个 Flink 任务来观测其他 Flink 任务的运行情况,判断并触发资源调整。该作品最终获得了最佳创意奖。

开发运维平台

此次大赛有多支参赛队伍都选择了设计研发基于 Flink 的开发及运维平台,包括通用的 Flink 作业可视化开发与管理平台,以及针对在线训练、特征工程等特定应用的平台等等。

亚军作品《基于Alink、Flink SQL 实现工业化批流一体在线学习体系,赋能模型化智能报警业务》实现了一套相对完整的端到端批流一体在线学习体系。该作品采用 Flink SQL 做在离线的特征生成与样本拼接,采用基于 Flink 的机器学习算法库 Alink 做在离线训练,采用 Pravega 作为流批一体的中间件存储。作品还展示了该在线学习体系在模型华智能报警业务中的应用。

img

季军作品《Flink 实时流计算 web 平台》展示了一个轻量的可视化 Flink 任务开发及管理平台,功能涵盖任务配置、任务启停、监控告警、日志浏览、SQL 语法提示及格式化、SQL 语句校验等。该作品功能相对完整,且完全开源可复用,截至发稿时在 Github 上已有 1.4k Star。

img

领域场景应用

此次大赛,展示 Flink 在某个特定领域或场景中应用的参赛作品是最多的,其中尤其以机器学习与人工智能方向的应用居多。

《基于 GStreamer + Pravega + Flink 的实时生产线品质管控平台》以及《基于 Flink + Pravega 的数据流处理的实时工厂水果品质分类》都是采用 Flink + Pravega 进行视频流处理以及图像分类,分别获得了此次大赛的最佳实践奖和最佳创意奖。前者展示了从边缘到中心的一体化解决方案,后者则将实时计算应用在传统农业领域具有一定的新颖性。

img

《智慧农业中的产量预测监控与模拟复盘系统》同样是基于 Flink + Pravega 来预测农作物的产量。该作品一个比较新颖的地方时,利用流式处理的重放能力,结合人工生成的可控变量(温、湿度等),进行农作物产量的模拟复盘分析,巧妙地解决了农业技术领域影响因素多、实验周期长的问题。该作品获得了大赛的最佳实践奖。

《芯片软件 CI/CD 大数据分析与状态监测》立足于独特的场景。芯片软件除了具备底层技术的复杂性,还需要保证对众多平台的兼容适配,在日常开发中会产生大量的测试编译数据。利用 Flink + Pravega 对编译日志进行分析分类,能够极大幅度地降低人工成本,提高迭代效率。该作品同样获得了此次大赛的最佳实践奖。

img

另一项获得最佳创意奖的作品是《基于 Flink 集成 Rete 网络实现规则引擎处理分析海量数据》。该作品将专家系统中用于高效匹配批量模式与批量对象的 Rete 网络与 Flink 的分布式实时处理能力相结合,以提高匹配性能、降低资源消耗。

总结

以上就是 2021 FFA Hackathon 中的全部获奖作品。

在选题方面,去年的参赛选手们主要关注了一站式数仓、资源动态自适应、开发运维平台、AI / CEP 应用等领域。而在过去的一年里,Flink 社区先后发布了 Flink ML 2.0, Flink Table Store,Flink Kubernetes Operator 等新的子项目。在今年的实时计算 Flink 挑战赛中,参赛选手们又能利用这些原有的以及新兴的技术开出怎样的脑洞,让我们共同期待。

在评选方面,我们观察到去年的获奖作品均在创新性、完成度、技术难度、与 Flink 的契合度、实用性及可复用性中的一个或多个方面有比较好的表现。在今年的实时计算 Flink 挑战赛的赛题介绍中,也明确指出评委将重点从创新性、实用性、完成度等角度评判参赛作品。

最后,再次呼吁屏幕前的你,不要犹豫,召集起身边的小伙伴们,赶快报名,一起秀出你的创意吧~!

https://tianchi.aliyun.com/competition/entrance/532003/introduction


Flink Forward Asia 2022 正式启动

img

img

活动推荐

阿里云基于 Apache Flink 构建的企业级产品-实时计算Flink版现开启活动:
99 元试用 实时计算Flink版(包年包月、10CU)即有机会获得 Flink 独家定制卫衣;另包 3 个月及以上还有 85 折优惠!
了解活动详情:https://www.aliyun.com/product/bigdata/sc

image.png

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
8天前
|
消息中间件 Java 关系型数据库
实时计算 Flink版操作报错合集之从 PostgreSQL 读取数据并写入 Kafka 时,遇到 "initial slot snapshot too large" 的错误,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
579 0
|
8天前
|
存储 SQL 关系型数据库
实时计算 Flink版操作报错合集之按时间恢复时,报错:在尝试读取binlog时发现所需的binlog位置不再可用,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
507 0
|
8天前
|
监控 Oracle 关系型数据库
实时计算 Flink版操作报错合集之在配置连接时,添加了scan.startup.mode参数后,出现报错。是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
632 0
|
8天前
|
消息中间件 Oracle 关系型数据库
实时计算 Flink版操作报错合集之连接RabbitMQ时遇到Could not find any factory for identifier 'rabbitmq' that implements 'org.apache.flink.table.factories.DynamicTableFactory'错误,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
265 0
|
8天前
|
SQL 关系型数据库 MySQL
实时计算 Flink版操作报错合集之CDC任务在异常后整个record sent从0初始化开始,是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
377 0
|
8天前
|
Java 关系型数据库 流计算
实时计算 Flink版操作报错合集之配置cats进行从MySQL到StarRocks的数据同步任务时遇到报错,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
292 0
|
8天前
|
关系型数据库 数据库 流计算
实时计算 Flink版操作报错合集之在使用Flink CDC TiDB Connector时,无法获取到事件,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
316 0
|
8天前
|
消息中间件 资源调度 Java
实时计算 Flink版操作报错合集之遇到了缺少包的错误,已经添加了相应的 jar 包,仍然出现同样的报错,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
555 2
|
8天前
|
SQL JSON 数据库
实时计算 Flink版操作报错合集之写入Hudi时,遇到从 COW(Copy-On-Write)表类型转换为 MOR(Merge-On-Read)表类型时报字段错误,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
8天前
|
消息中间件 关系型数据库 MySQL
实时计算 Flink版操作报错合集之遇到依赖问题该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
337 0

热门文章

最新文章

相关产品

  • 实时计算 Flink版