PyFlink 的发展始终要以本心驱动,我们要围绕将现有 Flink 功能输出到 Python 用户,将 Python 生态功能集成到Flink当中为目标。PyFlink的 Roadmap 如图所示:首先解决 Python VM 和 Java VM 的通讯问题,然后将现有的 Table API 功能暴露给 Python 用户,提供 Python Table API,这也就是 Flink 1.9 中所进行的工作,接下来我们要为将Python功能集成到Flink做准备就是集成 Apache Beam,提供 Python UDF 的执行环境,并增加Python 对其他类库依赖的管理功能,为用户提供 User-defined-Funciton 的接口定义,支持 Python UDF,这就是 Flink 1.10 所做的工作。
为了进一步扩大Python生态的分布式功能,PyFlink 将提供 Pandas 的 Series 和 DataFram 的支持,也就是用户可以在 PyFlink 中直接使用 Pandas 的UDF。同时为增强用户的易用性,让用户有更多的方式使用 PyFlink,后续增加在 Sql Client 中使用 Python UDF。面对 Python 用户的机器学习问题,增加 Python 的 ML pipeline API。监控 Python UDF 的执行情况对,对实际的生产业务非常关键,所以 PyFlink 会增加 Python UDF 的 Metric 管理。这些点将在 Flink 1.11 中将与用户见面。
但这些功能只是 PyFlink 规划的冰山一角,后续我们还要进行性能优化,图计算API,Pandas on Flink 的 Pandas 原生 API 等等。。。进而完成不断将 Flink 现有功能推向 Python 生态,将 Python 生态的强大功能不断集成到 Flink 当中,进而完成 Python 生态分布化的初衷。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。