深度解读!新一代大数据引擎Flink凶猛在哪?附学习礼包
作者头像
  • 陶晓庆
  • 2020-10-05 21:42:31 11

大数据文摘出品

历经多年的发展,Apache Flink 1.11.0 终于发布了!作为新一代的开源大数据计算引擎,Flink 已成为 Apache 基金会和 GitHub 上最为活跃的项目之一。截至2020年7月,该项目已积累了13600多个星标,拥有718位贡献者,共有22989次提交。目前,Flink 在 GitHub 上的关注量在所有 Apache 项目中排名前三。

Flink 以其独特的架构优势吸引了众多开源爱好者,许多知名公司如阿里巴巴、腾讯、字节跳动、滴滴、美团等都选择了 Flink 作为流处理平台的核心技术。

为什么 Flink 如此受欢迎?

随着大数据时代的到来,企业需要处理的数据量越来越大,既有全量数据也有增量数据。Flink 作为一款卓越的流计算引擎,不仅可以处理流数据,还可以处理批处理任务以及机器学习任务。用户只需要编写一套代码,就可以应对不同的数据处理需求,极大地提升了工作效率。

Apache Flink 的系统架构

近期发布的 Flink 1.11.0 版本,汇聚了超过200名贡献者的智慧,完成了超过1300项修复和优化,显著提升了系统的可用性和各个API栈的功能。

重磅福利:Flink 年度学习材料大礼包

为了帮助大家更好地理解和应用 Flink,大数据文摘特别推出了 Flink 年度学习材料大礼包。这份大礼包不仅包括 Flink 的年度学习材料,还有300多页的实战经验总结。无论你是零基础的初学者,还是有经验的技术人员,都能从中受益匪浅。内容涵盖了来自国内外一线大厂的最佳实践案例,包括 bilibili、美团点评、小米、OPPO、快手、Lyft、Netflix 等公司的实时计算平台及实时数仓的实际案例。

阿里云《实时计算Flink极客训练营》

除了学习材料,我们还推荐你参加阿里云即将推出的《实时计算Flink极客训练营》。这门课程为期5天,将帮助你从零开始了解 Flink 和流计算的基本概念,并通过实际案例深入了解 Flink SQL/Table 的基础概念及其流处理和批处理能力。此外,还将介绍 PyFlink 的基本用法,以及如何将 Flink 与外部系统对接。

报名链接:https://developer.aliyun.com/learning/trainingcamp/sc/2?utmcontent=g1000181368

此外,还有直播课程教你如何正确使用 Flink,帮助你快速成长为 Flink 技术专家。

Flink 1.11 新功能详解

Flink 1.11 版本中最令人瞩目的改进之一是流批一体 Hive 数仓的支持。这一功能使得 Flink 能够实现流处理的实时性和精确性,同时结合 Hive 批处理数仓的能力。Flink 1.11 还增强了自身的 Filesystem connector,提升了易用性。

离线数仓与实时数仓

传统的离线数仓由 Hive 和 HDFS 组成,具有成熟和稳定的大数据分析能力。然而,这类数仓在实时性方面存在不足,实时性较差,且难以灵活应对增量数据处理的需求。

相比之下,实时数仓基于 Kafka 和 Flink Streaming,具备秒级甚至毫秒级的实时性。但实时数仓的一个问题是历史数据保存时间较短,无法支持灵活的 Ad-hoc 查询。

Hive 实时化

Flink 1.11 通过增强 Hive 数仓的实时性功能,解决了离线数仓的瓶颈问题。特别是在数据导入方面,Flink 1.11 支持 Filesystem connector 和 Hive connector 的实时数据导入,实现了流处理的实时性和精确性。

Hive Streaming Sink

实时数据导入 Hive 数仓的方式多种多样,如 Flume、Spark Streaming 或 Flink DataStream。Flink 1.11 引入了 Table/SQL 层的 streaming file sink,支持多种格式(如 CSV、JSON、Avro、Parquet、ORC),并且继承了 DataStream StreamingFileSink 的所有特性,如 Exactly-once 支持和 HDFS/S3 兼容。

Hive Streaming Source

针对离线 ETL 作业的实时化需求,Flink 1.11 支持实时化的 Hive 流读,能够监控 Partition 的生成并增量读取新的 Partition。此外,Flink 还支持非 Partition 表的新文件生成,并增量读取新的文件。

Hive 增强功能

Hive Dialect 语法兼容

Flink 1.11 引入了 Hive Dialect,使用户能够在 Flink 中更方便地使用 Hive 的语法。该功能允许用户在 Flink 中直接使用 Hive 的 DDL 语句,无需切换到 Hive CLI。

向量化读取

Flink 1.11 支持更多格式的向量化读取,如 ORC 和 Parquet,这极大地提高了数据处理的效率。

简化 Hive 依赖

Flink 1.11 提供了内置的 Hive 依赖支持,简化了用户的操作步骤,只需下载一个包并配置 HADOOP_CLASSPATH 即可运行 Flink on Hive。

Flink 加强功能

除了 Hive 相关的增强功能,Flink 1.11 还实现了许多其他重要的改进,如 Filesystem connector 的重构,支持多种数据格式和操作模式,以及引入 Max Slot 配置以限制资源消耗。

想要深入了解 Flink?点击阅读原文或扫描二维码,报名《实时计算Flink极客训练营》,获取阿里云大数据独门绝学!

[附件图片省略]

    本文来源:图灵汇
责任编辑: : 陶晓庆
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
礼包凶猛新一代深度解读引擎数据学习Flink
    下一篇