超强攻略!看完拿 Apache Flink 极客挑战赛全场最佳「MVP」

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 垃圾图片分类与 Flink TPC-DS 性能优化两大赛题重要知识点及相关工具解析。

首届 Apache Flink(以下简称 Flink)极客挑战赛自 7 月 24 日上线以来已有 1000+ 参赛队伍报名。针对极客挑战赛垃圾图片分类与 Flink TPC-DS 性能优化两大赛题涉及的重要知识点及相关工具使用已在每周直播课程中分享,本文将为大家奉上两大赛题超详细攻略,揭秘两大赛题的核心关键。

Apache Flink极客挑战赛-01.jpg

赛题详细解析

垃圾图片分类及 Flink TPC-DS 性能优化两大赛题所需用到的数据集、开发或性能优化过程的详细说明等已全部更新在官网,以下对赛题重点内容进行说明。

垃圾图片分类赛题说明

垃圾图片分类需要参赛选手使用 Flink 和 intel Analytics Zoo 实现对垃圾图片的识别与分类功能,系统给定 600 张图片,由参赛队伍提供程序进行预测,根据预测结果进行打分。

划重点:实时图片分类的速度与预测的准确度是解题关键;分数计算方法为(500 毫秒内识别准确图片数 / 总图片数[600])*100。

1.数据说明

  • 初赛

给定垃圾图片样例视频展示 100 个分类的 300 张 jpg 图片(用户本地调试可以从网上下载)和训练好的垃圾图片的分类模型(包括模型输入数据格式等参数)。大赛组委会提供运行环境。样例视频地址请见下文详细开发流程说明链接。

  • 复赛

给定垃圾图片样例视频展示 100 个分类的 300 张 jpg 图片(用户本地调试可以从网上下载)。参赛队伍通过使用 Flink 和 intel Analytics Zoo 实现实时垃圾图片分类算法(模型定义使用 Tensorflow python 接口,运行作业使用 Flink),包括模型训练和模型预测。用户上传算法代码,平台将提供约 6000 张垃圾图片用于训练数据集, 3 小时内训练出垃圾图片分类模型,然后运行给定垃圾图片集合(600 张垃圾图片)根据用户训练出的模型,使用 Flink 实现实时垃圾图片分类。

排名规则:根据上述计算分数从高到低排名。

2.开发流程

如何安装至本地仓库、获取模型路径、图片目录结构、提交 jar 包到天池平台、模型说明、Flink 运行环境说明等官网已更新详细步骤及开发代码。

数据集下载及详细开发流程说明

https://tianchi.aliyun.com/competition/entrance/231743/information

3.学习资料

a.TensorFlow On Flink

b.Anlytics-Zoo 构建统一的大数据分析+AI流水线

Flink TPC-DS 性能优化赛题说明

Flink TPC-DS 性能优化需要参赛队伍使用大赛提供的 Flink 分支,进行 Flink 代码优化以提升 Flink SQL 执行效率, 组委会提供 Benchmark 工具供参赛队伍自行测试。 比赛阶段,选手将最终优化后的 Flink 代码打包,通过天池平台提交,天池平台会使用相同的性能测评工具,进行评测、排名。

划重点:优化是本赛题最主要的部分,对于 Flink 代码和配置的优化 ,包含但不限于以下模块:

  • SQL 优化,优化出更合理的 SQL 执行 Plan。
  • 算子优化, 优化出更高效的 SQL 执行算子。
  • 引擎优化, 优化调度,数据传输等等,可以让作业执行更快速。

1.赛题解读

  • 初赛

在给定的非 DCPMM 机器环境下,优化 Flink 系统及运行参数,对给定的 TPC-DS query 按照指定的顺序执行,循环三次。

  • 复赛

使用包含 DCPMM 硬件的机器,要求参赛队伍基于 DCPMM 进一步探索并实现可能的优化途径。

2.赛题要求

比赛使用的测试数据集为 100 G,用户自行用 Benchmark 工具生成,生成数据集的随机因子组委会不公开。

比赛使用 SQL query 为 TPC-DS 工具生成的 99 个 SQL(含变种 SQL),共计 103 个,组委会从中选择 20 条 SQL 进行评测。

选手可以进行 SQL 优化,执行 Plan 算子优化,引擎优化,调度优化,数据传输优化等,以便让 SQL 作业执行更快速。

选手每天有三次提交作业的机会,每个自然日提供 5 次代码运行机会。

组委会保留对赛题修改的权利。

3.详细说明

关于性能优化赛题涉及的工程结构、工程代码、生成数据集和 query、优化代码、性能评测、提交作业及格式转换工具等详细说明文档已上线:

1.工程结构
2.工程代码
3.生成数据集和 query
4.优化 Flink 代码
5.性能评测
  5.1 本地 Intellij 测试
  5.2 集群运行
6.提交作业至天池平台
7.格式转换工具

完整文档说明:
https://tianchi.aliyun.com/competition/entrance/231742/information

4.学习资料

a.深度探索 Flink SQL

b.Flink Runtime 核心机制剖析

c.Take advantage of Intel Optane DCPM in Flink workload

程序员鼓励师活动

即日起,报名参赛选手成功邀请身边小伙伴参赛,将获得鼓励师奖励。

报名时填写邀请人手机号或昵称即可,易重名同学建议名字+自定义编号哦,如李明2~

image.png

1.邀请两名小伙伴成功报名,可获得 Flink 定制马克杯一枚。

2.邀请四名小伙伴成功报名参赛,可获得 Flink 定制单肩包一个。(兑换上限为6人)

3.继续邀请还将进入鼓励师排行榜,榜单每周在技术圈更新,初赛截止时榜单为最终榜单。

鼓励师特别奖励:

第一名:1个名额,机械键盘1台

第二名:2个名额,空气净化器 1台

第三名:5个名额,运动手环 1个

:两大赛题鼓励师排行榜分开进行,按照以上规则分别获得鼓励师特别奖励。

大赛答疑交流群:

  • Flink 垃圾图片分类答疑交流钉钉群号:23129395
  • Flink TPC-DS 性能优化答疑交流钉钉群号:21950145

Tips:大赛微信交流群可加小松鼠微信,小松鼠拉大家进群(Ververica2019),加小松鼠微信请备注垃圾图片分类或性能优化哦

大赛详情:https://tianchi.aliyun.com/markets/tianchi/flink2019

还没报名的同学快上车,了解更多 Apache Flink 极客挑战赛信息~

史上超强阵容,Flink Forward Asia 2019 你报名了吗?

公众号banner.jpg

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
17天前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。
|
1月前
|
消息中间件 监控 数据挖掘
基于RabbitMQ与Apache Flink构建实时分析系统
【8月更文第28天】本文将介绍如何利用RabbitMQ作为数据源,结合Apache Flink进行实时数据分析。我们将构建一个简单的实时分析系统,该系统能够接收来自不同来源的数据,对数据进行实时处理,并将结果输出到另一个队列或存储系统中。
105 2
|
9天前
|
消息中间件 资源调度 API
Apache Flink 流批融合技术介绍
本文源自阿里云高级研发工程师周云峰在Apache Asia Community OverCode 2024的分享,内容涵盖从“流批一体”到“流批融合”的演进、技术解决方案及社区进展。流批一体已在API、算子和引擎层面实现统一,但用户仍需手动配置作业模式。流批融合旨在通过动态调整优化策略,自动适应不同场景需求。文章详细介绍了如何通过量化指标(如isProcessingBacklog和isInsertOnly)实现这一目标,并展示了针对不同场景的具体优化措施。此外,还概述了社区当前进展及未来规划,包括将优化方案推向Flink社区、动态调整算子流程结构等。
258 31
Apache Flink 流批融合技术介绍
|
28天前
|
Java 微服务 Spring
驾驭复杂性:Spring Cloud在微服务构建中的决胜法则
【8月更文挑战第31天】Spring Cloud是在Spring Framework基础上打造的微服务解决方案,提供服务发现、配置管理、消息路由等功能,适用于构建复杂的微服务架构。本文介绍如何利用Spring Cloud搭建微服务,包括Eureka服务发现、Config Server配置管理和Zuul API网关等组件的配置与使用。通过Spring Cloud,可实现快速开发、自动化配置,并提升系统的伸缩性和容错性,尽管仍需面对分布式事务等挑战,但其强大的社区支持有助于解决问题。
42 0
|
1月前
|
存储 消息中间件 Java
Apache Flink 实践问题之原生TM UI日志问题如何解决
Apache Flink 实践问题之原生TM UI日志问题如何解决
33 1
|
1月前
|
消息中间件 分布式计算 Hadoop
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
36 3
|
1月前
|
消息中间件 运维 Kafka
Apache Flink 实践问题之达到网卡的最大速度如何解决
Apache Flink 实践问题之达到网卡的最大速度如何解决
36 2
|
1月前
|
消息中间件 前端开发 Kafka
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
|
1月前
|
SQL 运维 分布式计算
Apache Flink 实践问题之避免用户作业包中包含Flink的core包如何解决
Apache Flink 实践问题之避免用户作业包中包含Flink的core包如何解决
39 1
Apache Flink 实践问题之避免用户作业包中包含Flink的core包如何解决
|
1月前
|
SQL API Apache
官宣|Apache Flink 1.20 发布公告
Apache Flink 1.20.0 已发布,这是迈向 Flink 2.0 的最后一个小版本,后者预计年底发布。此版本包含多项改进和新功能,涉及 13 个 FLIPs 和 300 多个问题解决。亮点包括引入物化表简化 ETL 管道开发,统一检查点文件合并机制减轻文件系统压力,以及 SQL 语法增强如支持 `DISTRIBUTED BY` 语句。此外,还进行了大量的配置项清理工作,为 Flink 2.0 铺平道路。这一版本得益于 142 位贡献者的共同努力,其中包括来自中国多家知名企业的开发者。
790 7
官宣|Apache Flink 1.20 发布公告

相关产品

  • 实时计算 Flink版
  • 推荐镜像

    更多