阿里巴巴编程之夏项目——Apache Flink

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 项目介绍: Apache Flink 是由 Apache 软件基金会开发的开源流处理框架,其核心是用 Java 和 Scala 编写的分布式流数据流引擎。Flink 以数据并行和流水线方式执行任意流数据程序,Flink 的流水线运行时系统可以执行批处理和流处理程序。

阿里巴巴编程之夏(Alibaba Summer of Code)是一个全球性计划,通过这个计划,学生可以直接参与开源软件开发,在导师(Mentor)的指导下,深度体验真实世界的软件开发,感受开源技术共建的魅力。

另外,学生能够在计划进行中,结实更多开源领域技术大牛和志趣相投的小伙伴;在完成计划后获得由阿里巴巴提供的奖学金、开源贡献者证书并且有机会进入阿里招聘绿色通道;学生编写的代码更有机会被国际开源基金顶级项目采用,让世界各地的人自由使用。

这些收获,不仅仅是未来求职简历上浓墨重彩的一笔,更是学生向高阶开源贡献者晋级的闪亮起点。阿里巴巴编程之夏将于 2019 年 5 月 6 日- 8 月 29 日间展开,学生可以利用暑期时间参与到开源项目中。

项目介绍:

Apache Flink 是由 Apache 软件基金会开发的开源流处理框架,其核心是用 Java 和 Scala 编写的分布式流数据流引擎。Flink 以数据并行和流水线方式执行任意流数据程序,Flink 的流水线运行时系统可以执行批处理和流处理程序。此外,Flink 的运行时本身也支持迭代算法的执行。

Idea list

1.Add a new implementation of the HighAvailabilityServices using etcd:https://issues.apache.org/jira/browse/FLINK-11105

  • Mentor:沙晟阳 @ 成阳 ;GitHub ID:[MalcolmSanders;(https://github.com/MalcolmSanders) Apache YARN、Flink 贡献者; 阿里云计算平台高级开发工程师

2.在树莓派等有限硬件资源的环境下高效的运行 flink,将 flink 应用于 IoT,边缘计算场景

  • Mentor:宋辛童 @ 五藏;Github ID: xintongsong 北京大学博士;阿里巴巴 高级开发工程师

3.通过 Intelij Idea 一站式编写、远程提交和分布式Debug Flink 任务。Intelij Idea 是很好的编程语言 IDE,Flink 是下一代分布式大数据处理引擎,两者结合,在 Intellij Idea 上构建Flink 任务编写、远程任务提交、分布式 Debug 和在线运维的一站式服务将对 Flink 用户带来更好的体验。通过该项目,有助于熟练使用 Flink,提升大数据处理和相关工具的开发使用能力,提交的代码反馈社区,尽早参与到 Flink 生态建设中。

  • Mentor:何健超 @ 迟南; Github id: hejianchao; 阿里巴巴 技术专家

4.State storage is on the critical path of Flink, a stateful computing engine. Basically it's a kv store but with computing-relative requirement, thus an interdisciplinary area. Gemini is a KeyValue store we designed for such scenario. In Gemini, using elastic pages from a few bytes to tens of KB to store the data.
In this topic you need to implement a cache allocator for pages, which aims at supporting off-heap to reduce GC, having high throughput and always replacing cold data with hot ones to increase cache hit ratio and memory utilization.

  • Mentor:李钰 @ 绝顶; Github id: [https://github.com/carp84]
    Apache HBase PMC & committer, Flink/HDFS contributor; 阿里巴巴 高级技术专家

5.State storage is on the critical path of Flink, a state-ful computing engine. Basically it's a kv store but with computing-relative requirement, thus an interdisciplinary area. Gemini is a KeyValue store we designed for such scenario, it's a two-component LSM-tree structure, of which C0 tree is write buffer, and C1 tree could be an enhanced B+-tree or hash table, where hash table offers faster random lookup than sorted-base index.In this topic you need to implement a CSBw-tree, which is a combination of CSB+-tree[1] and Bw-tree[2], which aims at both good cpu cache utility (cache-conscious) and fast random access.

[1] Making B+-Trees Cache Conscious in Main Memory, SIGMOD 2000
[2] The Bw-Tree: A B-tree for New Hardware Platforms, ICDE 2013

  • Mentor:李钰 @ 绝顶;Github id: [https://github.com/carp84]
    Apache HBase PMC & committer, Flink/HDFS contributor; 阿里巴巴 高级技术专家

6.Batch benchmark has matured and been widely used to analyze performance of batch processing technologies. However, There is no suitable benchmark to test streaming framework, which has more performance latitudes and usage scenarios. So we need to develop streaming benchmark to comprehensive test Flink and other streaming processing framework, and optimize Flink according to the benchmark results.

  • Mentor:
    胥平勇 @姬平; Github id: XuPingyong; Apache Flink contributor; 阿里巴巴 技术专家
相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
30天前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
588 13
Apache Flink 2.0-preview released
|
1月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
68 3
|
2月前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。
|
3月前
|
消息中间件 监控 数据挖掘
基于RabbitMQ与Apache Flink构建实时分析系统
【8月更文第28天】本文将介绍如何利用RabbitMQ作为数据源,结合Apache Flink进行实时数据分析。我们将构建一个简单的实时分析系统,该系统能够接收来自不同来源的数据,对数据进行实时处理,并将结果输出到另一个队列或存储系统中。
223 2
|
2月前
|
消息中间件 资源调度 API
Apache Flink 流批融合技术介绍
本文源自阿里云高级研发工程师周云峰在Apache Asia Community OverCode 2024的分享,内容涵盖从“流批一体”到“流批融合”的演进、技术解决方案及社区进展。流批一体已在API、算子和引擎层面实现统一,但用户仍需手动配置作业模式。流批融合旨在通过动态调整优化策略,自动适应不同场景需求。文章详细介绍了如何通过量化指标(如isProcessingBacklog和isInsertOnly)实现这一目标,并展示了针对不同场景的具体优化措施。此外,还概述了社区当前进展及未来规划,包括将优化方案推向Flink社区、动态调整算子流程结构等。
392 31
Apache Flink 流批融合技术介绍
|
1月前
|
分布式计算 监控 大数据
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
57 1
|
1月前
|
数据挖掘 物联网 数据处理
深入探讨Apache Flink:实时数据流处理的强大框架
在数据驱动时代,企业需高效处理实时数据流。Apache Flink作为开源流处理框架,以其高性能和灵活性成为首选平台。本文详细介绍Flink的核心特性和应用场景,包括实时流处理、强大的状态管理、灵活的窗口机制及批处理兼容性。无论在实时数据分析、金融服务、物联网还是广告技术领域,Flink均展现出巨大潜力,是企业实时数据处理的理想选择。随着大数据需求增长,Flink将继续在数据处理领域发挥重要作用。
|
1月前
|
消息中间件 druid Kafka
从Apache Flink到Kafka再到Druid的实时数据传输,用于分析/决策
从Apache Flink到Kafka再到Druid的实时数据传输,用于分析/决策
73 0
|
2月前
|
Apache
多应用模式下,忽略项目的入口文件,重写Apache规则
本文介绍了在多应用模式下,如何通过编辑Apache的.htaccess文件来重写URL规则,从而实现忽略项目入口文件index.php进行访问的方法。
|
3月前
|
Java 微服务 Spring
驾驭复杂性:Spring Cloud在微服务构建中的决胜法则
【8月更文挑战第31天】Spring Cloud是在Spring Framework基础上打造的微服务解决方案,提供服务发现、配置管理、消息路由等功能,适用于构建复杂的微服务架构。本文介绍如何利用Spring Cloud搭建微服务,包括Eureka服务发现、Config Server配置管理和Zuul API网关等组件的配置与使用。通过Spring Cloud,可实现快速开发、自动化配置,并提升系统的伸缩性和容错性,尽管仍需面对分布式事务等挑战,但其强大的社区支持有助于解决问题。
75 0

推荐镜像

更多