StreamX v1.1.0 发布,Flink 开发脚手架、流批一体平台

来源: 投稿
作者: benjobs
2021-06-28

Make Flink|Spark easier!!!

    

 

        大数据技术如今发展的如火如荼,已呈现百花齐放欣欣向荣的景象,实时处理流域 Apache Spark 和 Apache Flink 更是一个伟大的进步,尤其是Apache Flink被普遍认为是下一代大数据流计算引擎, 我们在使用 Flink 时发现从编程模型, 启动配置到运维管理都有很多可以抽象共用的地方, 我们将一些好的经验固化下来并结合业内的最佳实践, 通过不断努力终于诞生了今天的框架 —— StreamX, 项目的初衷是 —— 让 Flink 开发更简单, 使用StreamX开发,可以极大降低学习成本和开发门槛, 让开发者只用关心最核心的业务,StreamX 规范了项目的配置,鼓励函数式编程,定义了最佳的编程方式,提供了一系列开箱即用的Connectors,标准化了配置、开发、测试、部署、监控、运维的整个过程, 提供scalajava两套api, 其最终目的是打造一个一站式大数据平台,流批一体的解决方案.

        StreamX 遵循 Apache-2.0 开源协议,将会是个长期更新的活跃项目,欢迎大家提交PRIssue。喜欢请给个 Star。您的支持是我们最大的动力, 该项目从开源以来受到不少朋友的关注和认可,表示感谢,已陆续有来自金融,数据分析,车联网,智能广告,地产等公司的朋友在使用或二开,也不乏来自一线大厂的朋友在研究使用,有同学开发了k8s和批任务定时调度的分支,并表示会贡献上来,这是非常好的现象.欢迎更多的开发者加入一块贡献,只有坚持做下去,并且做好才有意义,如果眼下还是一团薪薪之火,大家的热情一定可以让她烈焰燎原起来.

更新日志

  • 新增功能
    ​​​​​1. hadoop2/hadoop3 环境的兼容支持
    2. Kerberos认证支持
    3. 优化读取hadoop配置文件的策略,使本地开发调试更方便
    4.  jdk8以上版本的支持和兼容
    5. 针对checkpoint连续失败的处理(按照失败率邮件告警或重启)
    6. flink 1.13新增的sql语法支持
    7. 无需补全访问路径自动跳转到index.html(访问地址栏不用在手动输入/index.html了)
    8. workspace (hdfs) 根路径可配置化
    9. startlog 中点击任务applicationId即可跳转到yarn中查看详情
  • bug修复
    1.
      简化streamx-console最终打完的包结构
    2.  create view,set,reset等语法的bug修复
    3.  文件上传bug修复
    4. 发送邮件模板优化及bug修复
    5. 前端关于任务修改编辑表单验证相关的bug修复
    6. program arguments字段类型修改为text,修复参数过长导致的bug
    7. 优化FLINK_HOME未设置,启动异常但任务状态一直为启动中的bug
    8. maven 依赖优化,依赖版本统一管理
    9. flink sql任务中pom依赖下载失败,任务不能做任何操作的bug修复
    10. 示例任务Flink SQL Demo执行失败的bug修复
    11. jdk1.8+环境项目启动失败,不能动态加载资源到classpath的bug修复
    12. 多个insert into插入优化(issues 186)
    13. 修改任务时"更多参数"修改导致的空指针异常修复 (issues 202)
    14. 修复解析flink-conf.yaml文件可能存在的bug
    15. 修复checkpoint返回路径前缀可能存在的bug

功能列表

  • 开发脚手架

    [] 简化八股文编程步骤,更便捷的api,全新的编程体验                     [重要特性]
    [] DataStream和flink SQL一致的编程体检                                      [重要特性]
    [] 约定优于配置,封装配置信息和env环境信息                                 [重要特性]
    [] 常用connector二次封装,开箱即用                                                [重要特性]
    [] DataStream和flink Sql方法扩展,更丝滑的操作支持                    [重要特性]

  • 系统管理

    [] 用户管理, 新增,修改,删除,多租户支持
    [] 角色管理, 新增,修改,删除
    [] 菜单管理, 新增,修改,删除, 给角色分配权限,到按钮级别的权限控制

  • 项目管理

    [] 项目创建,删除(目前只支持git)                                                      [重要特性]
    [] 项目编译,实时查看编译日志                                                         [重要特性]
    [] 项目列表过滤查询,分页

  • 作业管理

    [] 作业启动,停止,重启,删除,火焰图(非flink内置)                   [重要特性]
    [] 停止时自动savePoint,启动时从savePoint恢复                             [重要特性]
    [] 自动记录每次任务checkpoint的路径信息,启动时自动恢复         [重要特性]
    [] 可视化 Flink SQL 编辑器,格式化,语法校验,保存                     [重要特性]
    [] flinkSQL 任务多版本的支持                                                            [重要特性]
    [] application 部署模式                                                                       [重要特性]
    [] 多版本flink的支持(flink 1.11.x,1.12.x,1.13.0)                                   [重要特性]
    [] 任务历史版本备份于和回滚                                                            [重要特性]
    [] 任务依赖管理,支持标准maven pom坐标的依赖和手动上传jar    [重要特性]
    [] 任务实时状态显示与实际任务保持一致                                         [重要特性]
    [] 任务监控,失败告警,发送邮件通知,自动重启                                  [重要特性]
    [] 针对checkpoint连续失败的处理(邮件告警|重启)                          [重要特性]
    [] kerberos的认证支持                                                                        [重要特性]
    [] 作业创建,删除,编辑,更新,保存,常规参数配置。
    [] 任务启动失败的日志在线查看
    [] yarn pre job 部署模式
    [] 作业列表的查看,过滤,分页。

Notebook:
    [] 实验性功能,在线作业编写运行

Next version:
    [] 本地上传jar任务的支持
    [] 操作接口开放(rest请求可以控制任务启动|停止|savePoint等)
    [] 其他反馈的bug修复

大版本功能:

    [] 容器化部署(docker), k8s 部署模式
    [] SQL 的在线开发增强,智能提示,数据采样, 测试, 运行
    [] 元数据支持
    [] 定时任务集成(针对批作业定时调度)
    [] 单点部署故障解决,HA高可用

重要特性

  1. 开发脚手架
  2. 多版本Flink支持(多版本无缝支持1.11.x,1.12.x,1.13.x)
  3. 一系列开箱即用的connectors
  4. 支持项目编译功能(maven 编译)
  5. 在线参数配置
  6. 支持 Applicaion 模式, Yarn-Per-Job 模式启动
  7. 快捷的日常操作(任务启动,停止,savepoint,从savepoint恢复)
  8. 支持火焰图
  9. 支持 notebook (在线任务开发)
  10. 项目配置和依赖版本化管理
  11. 在线管理依赖(maven pom)和自定义jar
  12. Flink SQL WebIDE
  13. 支持 Catalog、Hive
  14. 任务失败告警和重试重启

贡献名单

软件架构

项目地址

官网:http://www.streamxhub.com

Github: streamxhub/streamx: Make Flink|Spark easier!!! (github.com)

Gitee: benjobs/StreamX (gitee.com)

快速上手

展开阅读全文
36 收藏
分享
加载中
最新评论 (4)
您好,请问大数据是用这个来进行查询的吗?
2021-06-28 17:13
0
回复
举报
mark
2021-06-28 14:54
0
回复
举报
学习,学习,学习啊
2021-06-28 12:44
0
回复
举报
优秀……
2021-06-28 11:20
0
回复
举报
更多评论
4 评论
36 收藏
分享
返回顶部
顶部