PyFlink 1.11 游乐场 - 序

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: # 背景 Apache Flink Python API , 简称 PyFlink 是Apache Flink 对多语言支持的第一步,针对Python用户进行深度支持。PyFlink相对较新新的模块,第一个版本是在Flink 1.9 中发布的。之后在Flink 1.10和1.11两个大的版本发布中,PyFlink进行了大量的功能增加和性能优化。目前在国内也有一些企业应用PyFlink来支撑其数据

背景

Apache Flink Python API , 简称 PyFlink 是Apache Flink 对多语言支持的第一步,针对Python用户进行深度支持。PyFlink相对较新新的模块,第一个版本是在Flink 1.9 中发布的。之后在Flink 1.10和1.11两个大的版本发布中,PyFlink进行了大量的功能增加和性能优化。目前在国内也有一些企业应用PyFlink来支撑其数据计算业务。比如:聚美优品, 浙江墨芷。 但目前投产的企业用户大多是参与了PyFlink 社区扶持计划才得以顺利投产的,其根本原因是PyFlink目前缺少案例性介绍,缺少实战类的端到端的示例介绍。进而很多用户想用但是有无从用起。所以我和的PyFlink小伙伴讨论整理几个可以体现PyFlink核心应用和特点的示例供大家直观的体验PyFlink的功能特点,并且也可以按照示例介绍亲自动手开发PyFlink作业。快速了解PyFlink,进而解决您实际业务需求。

PyFlink 应用场景

PyFlink致力于将现有Flink的功能输出给Python用户,同时也会极大程度的让丰富的Python生态库功能借助于Flink具备分布式计算能力。

image.png

基于这样的目标,PyFlink所适用的场景覆盖Flink擅长的应用场景和Python生态所适应的场景,比如 事件驱动,数据分析,ETL等,如下图所示:

image.png

PyFlink的Roadmap

PyFlink按照先对齐Flink Java用户所能使用的功能,再逐渐集成各种主流的Python生态库,以这样的思考来规划PyFlink的功能开发,比如:1.9 提供 Table API&SQL, 1.10 提供Python UDF, 1.11 提供Pandas的生态库集成等,具体如下图所示:

roadmap-of-pyflink.gif

所以,在未来的1.12版本中,PyFlink将支持Python DataStream的功能,Python用可以享受到Flink90%的功能。同时Pandas UDAF的支持也进一步加强了Flink对Python生态的集成。

PyFlink 性能怎么样?

性能一直是用户关心的重点问题,Flink通过这几年的发展,其性能得到了目前Java用户的高度认可,也经历了多年阿里双11的历练,去年2019年双11实时计算峰值达到了25.51亿次/秒。那么Java性能这么优秀,Python用户可以享受到吗?当然可以,PyFlink架构决定了Python 用户编写的Table API/SQL作业和Java性能高度一致。PyFlink API架构如下图:

pyflink-udf-architecture.gif

这个架构决定了Python用户编写的Table API/SQL作业在运行的时候都是运行的Java算子,Python用户和Java用户都是运行在一套底层引擎之上。 所以大家也不用担心 PyFlink的执行性能。

当然上面架构没有体现PythonUDF的执行性能,因为Python UDF需要有独立的Python执行容器,那么目前PyFlink1.11版本相对于1.10有30倍的性能提升,初步测试比PySpark的UDF性能还要出色。后面案例我们也会有对比介绍。

本系列内容安排

本系列会为大家准备几个端到端的示例演示,从整体开发环境准备,到具体示例业务逻辑介绍,再到具体代码的开发逐一向大家进行详细介绍,整体包含的内容纲要如下:

  • PyFlink 1.11 游乐场 - 开发环境准备
  • PyFlink 1.11 游乐场 - 双11各地成交额统计(数据分析类)
  • PyFlink 1.11 游乐场 - 基于Pandas类库清洗熔炉温度采集数据(ETL类)
  • PyFlink 1.11 游乐场 - 应用Kmeans进行商品分类(机器学习类)
  • PyFlink 1.11 游乐场 - Python UDF 性能对比(PyFlink版本之间&PySpark和PyFlink对比)
  • PyFlink 1.11 游乐场 - 。。。
  • PyFlink 1.11 游乐场 - 。。。
  • PyFlink 1.11 游乐场 - 。。。
相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
4月前
|
安全 Python
使用python抽五福
使用python抽五福
122 6
|
2月前
|
存储 IDE 搜索推荐
解锁Python黑科技:字典树Trie,让你的数据检索快到飞起!
【7月更文挑战第21天】Trie树,又称前缀树,是高效字符串检索数据结构。在Python中,通过创建节点类`TrieNode`和树类`Trie`,实现插入、搜索和前缀匹配功能。应用包括自动补全、拼写检查、IP路由和数据压缩。使用Trie能提升数据处理性能。
37 0
|
12月前
|
Python
Python3,有了此库,不需要再为导包顺序而烦恼了,小刀拉屁股,涨知识了。
Python3,有了此库,不需要再为导包顺序而烦恼了,小刀拉屁股,涨知识了。
43 0
|
存储 小程序 Python
Python|随机函数——纸牌游戏的发牌机制
Python|随机函数——纸牌游戏的发牌机制
134 1
|
Python
蓝桥杯-剪格子-python
蓝桥杯-剪格子-python
67 0
|
Python
python 超好用的迭代兵器库itertools,十八般兵器哪18般?
python 超好用的迭代兵器库itertools,十八般兵器哪18般?
185 0
|
数据采集 JSON Go
一日一技:一根短横线在Golang 和 Python 中的妙用。
一日一技:一根短横线在Golang 和 Python 中的妙用。
104 0
|
Python
shuffle什么意思?python模拟随机发牌(斗地主、掼蛋)
shuffle什么意思?python模拟随机发牌(斗地主、掼蛋)
138 0
python小玩意——星座表程序
python小玩意——星座表程序
python小玩意——星座表程序
跟女朋友介绍十个常用的 Python 内置函数,她夸了我一整天
跟女朋友介绍十个常用的 Python 内置函数,她夸了我一整天