大家好,我是独孤风。今天为大家推荐的是一个完全开源的项目StreamX。该项目的发起者Ben也是我的好朋友。
什么是StreamX,StreamX 是Flink & Spark极速开发脚手架,流批一体一站式大数据平台。自2021年3月开源以来,贡献者已累计发展到10多位。
随着Flink&Spark生态的不断完善,越来越多的企业选择这两款组件,或者其中之一作为离线&实时的大数据开发工具,但是在使用他们进行大数据的开发中我们会遇到一些问题,比如:
- 任务运行监控怎么处理?
- 使用Cluster模式还是Nodeport暴露端口访问Web UI?
- 提交任务能否简化打包镜像的流程?
- 如何减少开发压力?
而StreamX就是专为解决这些问题而出现的,其提供了如下的一些功能:
- 开发脚手架
- Kubernetes部署模式支持
- YARN-Application部署模式支持
- 多版本Flink支持(1.12.x, 1.13.x, 1.14.x )
- 一系列开箱即用的Connectors
- 支持项目编译功能(CICD/maven编译)
- 快捷的日常操作(任务启动、停止、savepoint)
- 支持Notebook(在线任务开发)
- 在线参数配置
- 项目配置和依赖版本化管理
- 在线管理依赖(maven pom)和自定义jar
- 自定义 udf、连接器等支持
- Flink SQL WebIDE
有的同学可能会使用Zeppelin比较多,两者是有一定区别的,侧重点不同。未来也会写文做一下两者的对比。
(StreamX对Flink多版本的支持演示视频)
StreamX近期也发布了最新的版本StreamX 1.2.0。
在最新的版本中支持了以下功能:
- 与 Hadoop 解耦, 平台在启动时不在强制依赖 Hadoop 环境
- 较完整的支持了 Kubernetes 部署模式(Native Application/Native Session)
- Kubernetes 部署模式下, 任务的状态追踪监控
- 支持自动 build/push 镜像
- Flink 最新1.14.0 支持, 目前已经支持 Flink 1.12.x / 1.13.x / 1.14.0
- 新增打包机模块,任务打包 fat-jar 更方便
谁在使用StreamX:
在2021年11月18日,StreamX 也成功的入选了开源中国的2021年度最有价值开源项目。
未来的StreamX也进行着与doris,dolphinscheduler等整合的计划,也会继续增强StreamX在Flink流上的开发部署能力与运行监控能力,努力把StreamX打造成一个功能完善的流数据 DevOps。
StreamX是一个完全由国人发起的开源项目。也欢迎大家联系我们,加入到开源项目中来,为中国开源崛起献上一份自己的力量,未来共同向着成为Apache顶级项目而努力。
Streamx 官网:
http://streamxhub.com
Streamx Github:
https://github.com/streamxhub/streamx
Streamx Gitee:
https://gitee.com/streamxhub/streamx
on K8s 部署:
http://www.streamxhub.com/zh/doc/flink-k8s/1-deployment