实时计算 Flink 版 SQL 实践|学习笔记

简介: 快速学习 实时计算 Flink 版 SQL 实践

开发者学堂课程【《实时数仓入门课程》实时计算 Flink 版 SQL 实践】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/807/detail/13887


实时计算 Flink 版 SQL 实践


内容简介:

一、Flink SQL 简介

1.关于 Flink SQL

2.基本操作

3.维表 Lookup Join

4. window Aggregation

5. Group Aggregation

 

二、Flink SQL 上手示例

1.示例场景、环境说明

2.示例1:数据清洗、维表关联

3.示例2:分钟小时、天级成交统计

4.示例小结

 

三、开发常见问题和解法

1.开发中常见的问题和解法

 

 

一、Flink SQL 简介

1.关于 Flink SQL

声明式:Flink 顶层 API 稳定易使用

流批统一:统一的开发体验语义一致性

自动优化:屏蔽流计算 State 复杂性,自动优 化 P lan AutoPilot 自动调优

应用广泛:数据集成,实时报表,实时风控

 

2. 基本操作

—— SELECT &WHERE 语法

SELECT select_list FROM tableexpressionWHERE boolean_expression

—— SELECT 操作

SELECT *FROM Orders;

——WHERE 条件

 SELECT order_id, trans anount FROM Orders WHERE trans amount 100 AND order_id IS NOT NULL;

——使用表达式、内置函数

SELECT order_id, price trans_amount, DATE_FORMAT(gmt_create'yyyy-MM-dd HH: mm: S5') FROM Orders;

——使用自定义函数

 SELECT order_id, UDF_EXCHANGE _RATE(price, 'RMB, 'HKD') FROM Orders;

3.维表Lookup Join

4. window Aggregation

图片58.png

5. Group Aggregation

图片59.png


二、Flink SQL 上手示例

1.示例场景、环境说明

接入层数据

使用 SQL DataGen Connector 生成模拟电商交易数据

CREATE TEMPORARY TABLE 's orders'(

orderid BIGINT COMMENT'订单id,自增

auction_id BIGINT COMMENT'商品id,随机1~100000

userid BIGINT COMMENT'用户id,随机1~100000

transamount INT COMMENT'交易金额单位分,随机1~1000000

cate_id AS MOD(auction_id,100)+1 COMMENT'类目id,随机1~100

gmtcreate AS CURRENT_TIMESTAMP COMMENT订单创建时间

)COMMENT 'mocked order source'

WITH(

'connector'='datagen'

2.示例1:数据清洗、维表关联

 

3.示例2:分钟小时、天级成交统计

 

4.示例小结

 

三、开发常见问题和解法

实时计算如何下手?

如何设定作业初始资源?

复杂作业如何调试?

作业如何性能调优?

 

实时计算如何下手?

1.从简单例子上手、多尝试

2.关注 ververica.cn 和 B 站 Flink 公号分享内容

3.参考 Aliyun 行业解决方案

 

复杂作业如何调试?

1.开发调试由简入繁

2.借助调试输出、分段验证

3.实时计算 Flink 的调试功能

 

作业初始资源设置、如何调优?

1.小并发试跑、性能摸底

2.运行指标,关注数据倾斜、GC、外部瓶颈

3.实时计算  Flink 的 AutoPilot 功能


相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
7月前
|
SQL 人工智能 JSON
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
简介:本文整理自阿里云高级技术专家李麟在Flink Forward Asia 2025新加坡站的分享,介绍了Flink 2.1 SQL在实时数据处理与AI融合方面的关键进展,包括AI函数集成、Join优化及未来发展方向,助力构建高效实时AI管道。
1006 43
|
7月前
|
SQL 人工智能 JSON
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
本文整理自阿里云的高级技术专家、Apache Flink PMC 成员李麟老师在 Flink Forward Asia 2025 新加坡[1]站 —— 实时 AI 专场中的分享。将带来关于 Flink 2.1 版本中 SQL 在实时数据处理和 AI 方面进展的话题。
451 0
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
|
7月前
|
存储 分布式计算 数据处理
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
阿里云实时计算Flink团队,全球领先的流计算引擎缔造者,支撑双11万亿级数据处理,推动Apache Flink技术发展。现招募Flink执行引擎、存储引擎、数据通道、平台管控及产品经理人才,地点覆盖北京、杭州、上海。技术深度参与开源核心,打造企业级实时计算解决方案,助力全球企业实现毫秒洞察。
691 0
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
|
8月前
|
SQL 消息中间件 Kafka
Flink SQL 详解:流批一体处理的强大工具
Flink SQL 是 Apache Flink 提供的 SQL 引擎,支持流批一体处理,统一操作流数据与批数据,具备高性能、低延迟、丰富数据源支持及标准 SQL 兼容性,适用于实时与离线数据分析。
1122 1
|
9月前
|
资源调度 Kubernetes 流计算
Flink在B站的大规模云原生实践
本文基于哔哩哔哩资深开发工程师丁国涛在Flink Forward Asia 2024云原生专场的分享,围绕Flink On K8S的实践展开。内容涵盖五个部分:背景介绍、功能及稳定性优化、性能优化、运维优化和未来展望。文章详细分析了从YARN迁移到K8S的优势与挑战,包括资源池统一、环境一致性改进及隔离性提升,并针对镜像优化、Pod异常处理、启动速度优化等问题提出解决方案。此外,还探讨了多机房容灾、负载均衡及潮汐混部等未来发展方向,为Flink云原生化提供了全面的技术参考。
522 9
Flink在B站的大规模云原生实践
|
10月前
|
SQL 存储 NoSQL
Flink x Paimon 在抖音集团生活服务的落地实践
本文整理自抖音集团数据工程师陆魏与流式计算工程冯向宇在Flink Forward Asia 2024的分享,聚焦抖音生活服务业务中的实时数仓技术演变及Paimon湖仓实践。文章分为三部分:背景及现状、Paimon湖仓实践与技术优化。通过引入Paimon,解决了传统实时数仓开发效率低、资源浪费、稳定性差等问题,显著提升了开发运维效率、节省资源并增强了任务稳定性。同时,文中详细探讨了Paimon在维表实践、宽表建设、标签变更检测等场景的应用,并介绍了其核心技术优化与未来规划。
1001 10
Flink x Paimon 在抖音集团生活服务的落地实践
|
10月前
|
资源调度 Kubernetes 调度
网易游戏 Flink 云原生实践
本文分享了网易游戏在Flink实时计算领域的资源管理与架构演进经验,从Yarn到K8s云原生,再到混合云的实践历程。文章详细解析了各阶段的技术挑战与解决方案,包括资源隔离、弹性伸缩、自动扩缩容及服务混部等关键能力的实现。通过混合云架构,网易游戏显著提升了资源利用率,降低了30%机器成本,小作业计算成本下降40%,并为未来性能优化、流批一体及智能运维奠定了基础。
598 9
网易游戏 Flink 云原生实践
|
SQL NoSQL Java
Flink SQL 问题之执行报错如何解决
Flink SQL报错通常指在使用Apache Flink的SQL接口执行数据处理任务时遇到的问题;本合集将收集常见的Flink SQL报错情况及其解决方法,帮助用户迅速恢复数据处理流程。
1268 2
|
SQL Java 关系型数据库
Flink SQL 问题之用代码执行报错如何解决
Flink SQL报错通常指在使用Apache Flink的SQL接口执行数据处理任务时遇到的问题;本合集将收集常见的Flink SQL报错情况及其解决方法,帮助用户迅速恢复数据处理流程。
1844 6