【里程碑】Linkis 1.0.0-RC1 版本发布
Linkis 1.0.0-RC1 是 Linkis 里程碑式的重大版本,提供了超 60 个新特性和功能增强, 标志着 Linkis 正式进入 1.0 版本时代。
Linkis 是什么?
Linkis 在上层应用和底层引擎之间构建了一层计算中间件,上层应用只需对接 Linkis 提供的 REST/WS/JDBC 等标准接口,就能连接到 MySQL/Spark/Hive/Presto/Flink 等各种底层计算存储引擎,并实现上层应用间的互通。
Linkis1.0.0-RC1 带来了“计算治理”理念的全新架构实现,提供了全栈计算/存储引擎的架构支持,包括离线批量型、交互式型、实时流式型和存储型,并新增了多种新特性,向下兼容 Linkis0.X 版本的所有接口。
开源链接:
https://github.com/WeBankFinTech/Linkis
新版简介
丰富的底层计算存储引擎支持度。
已支持的计算存储引擎:Spark、Hive、Python、Presto、ElasticSearch、MLSQL、TiSpark、JDBC 和 Shell 等;
集成中的计算存储引擎:Flink、Impala 和 Clickhouse 等;
已支持的脚本语言:SparkSQL、Scala、Pyspark、R、Python、JDBC、HiveQL 和 Shell 等。
强大的计算治理能力。Linkis 1.0 总体分为三大模块:公共增强服务、计算治理服务、微服务治理服务。三大模块简介如下:
公共增强服务为 Linkis 0.X 已经提供的物料库服务、上下文服务、数据源服务和公共服务等;
微服务治理服务为 Linkis 0.X 已经提供 Spring Cloud Gateway、Eureka 和 Open Feign,同时 Linkis1.0 还会提供对 Nacos 的支持;
计算治理服务是 Linkis 1.0 的核心重点,从 提交 —> 准备 —> 执行三个阶段,来全面升级 Linkis 对 用户任务的执行管控能力。
全栈计算存储引擎架构支持。作为计算中间件,将接收、执行和管理针对各种计算存储引擎的任务和请求,包括离线批量型、交互式型、实时流式型和存储型任务,并提供强大的复用、预热、限流、切换、全生命周期管理等计算治理能力;更强大的资源管理能力。ResourceManager 不仅具备 Linkis0.X 对 Yarn 和 Linkis EngineManager 的资源管理能力,还将提供基于标签的多级资源分配和回收能力,让 ResourceManager 具备跨集群、跨计算资源类型的强大资源管理能力;
全流程标签化。基于多级组合标签,提供跨 IDC、跨集群的计算任务路由管控能力,和 EngineConnManager, EngineConn 的多租户隔离能力;
统一上下文服务。统一用户和系统资源文件(JAR、ZIP、Properties 等),跨用户、系统、计算引擎的参数和变量统一管理,一处设置,处处自动引用;
统一物料。系统和用户级物料管理,可分享和流转,跨用户、系统共享物料,支持全生命周期自动管理。
全新特性
[Linkis-572] 在“Entrance”模块中新增了 EngineConn 管理插件。
[Linkis-576] 新增 EngineConnPlugin 模块,简化用户实现 Linkis 新计算存储引擎。
[Linkis-579] 新增 EngineConn 的交互式类型顶层设计,让用户实现交互式引擎更加简单容易。
[Linkis-584]新增 LinkisManager Common 模块,为 LinkisManager 提供常用工具类。
[Linkis-585]新增 LinkisManager Monitor 模块,用于 LinkisManager 实时监控 EngineConn 和 EngineConnManager 的健康状态。
[Linkis-587] 新增 EngineConn Common 模块,为 EngineConn 提供常用工具类。
[Linkis-590] 新增 EngineConn 的核心模块,提供了 EngineConn 核心接口的定义。
[Linkis-591] 新增 Computation Governance Common 模块,为计算治理的所有服务提供常用工具类。
[Linkis-599] 新增 Linkis ResourceManager Common 模块,提供常用工具类。
[Linkis-600] 新增 LinkisManager Service Common 模块,为 AppManager 和 ResourceManager 提供常用工具类。
[Linkis-602] 新增 LinkisManager Persistence 模块,用于持久化 EngineConn 和 EngineConnManager 的信息。
[Linkis-604] 新增微服务标签功能,并支持为每个微服务添加标签。
[Linkis-609] 新增 Linkis Label 模块,为 Linkis 全流程的标签化能力 提供基础支撑。
[Linkis-611] 强化 Linkis 的管控能力,全新抽象 Linkis AppManager 模块,用于管理 EC 和 ECM 的全生命周期。
[Linkis-630] 新增 EngineConn Launch 模块,提供 EngineConn 的 main class 入口。
功能增强
[Linkis-569] 增强 Linkis RPC 的处理能力,并向下兼容 Linkis0.X 的 RPC。
[Linkis-574] 增强 Linkis 的标签管理功能,支持对 EngineConnManager 和 EngineConn 进行标签管理。
[Linkis-575] 增强 ResourceManager 的能力,并将其集成到 LinkisManager 中。
[Linkis-578] 增强 EngineManager,全新定义实现 EngineConnManager 模块。
[Linkis-580] 增强 SparkEngineConn,以适配 Linkis1.0 新架构。
[Linkis-583] 增强 ShellEngine,以适配 Linkis1.0 新架构。
[Linkis-592] 增强 JDBCEngine,以适配 Linkis1.0 新架构。
[Linkis-594] 增强 IOEngine,以适配 Linkis1.0 新架构。
[Linkis-596] 增强 HiveEngine,以适配 Linkis1.0 新架构。
[Linkis-597] 增强 PipelineEngine,以适配 Linkis1.0 新架构。
[Linkis-606] 拆分 Linkis0.X 的 EngineReceiver 为多种 Service,封装到 Executor 模块。
[Linkis-608] 增强 Linkis 启动和关闭服务的脚本,优化启动步骤。
[Linkis-618] 增强 PublicService 和 ContextService 模块,以适配 Linkis1.0 新架构。
[Linkis-638] 增强 Linkis Common 的加密功能。
[Linkis-643] 增强 DataSource 模块,以适配 Linkis1.0 新架构。
[Linkis-645] 增强 Linkis Hadoop 模块,使 Linkis 支持多套 Hadoop 集群。
[Linkis-648] 增强 Linkis httpclient 模块以支持 PUT 和 Delete 请求。
[Linkis-650] 优化 Linkis mybatis 模块,以与 mybatis-plus 集成。
[Linkis-652] 增强 Linkis protocol 模块,以适配 Linkis1.0 新架构。
[Linkis-654] 增强 Linkis Gateway 模块,支持通过标签路由转发前端请求。
[Linkis-655] 增强 Linkis JobHistory 模块,支持缓存 Job 的结果集,强化 Job 标签的管理功能。
[Linkis-656] 优化 Linkis RPC 模块序列化器的底层实现。
[Linkis-660] 增强 Linkis Scheduler 模块,支持自动清除空闲的 Consumer。
[Linkis-662] 增强 Linkis user control 模块,以适配 Linkis1.0 新架构。
[Linkis-663] 增强 Linkis Entrance 模块,以适配 Linkis1.0 新架构。
[Linkis-666] 优化目录层次结构并删除无用的目录。
[Linkis-668] 增强 Linkis storage 模块,以支持 viewFS 和多 hadoop 集群。
[Linkis-674] 增强 PythonEngineConn,以适配 Linkis1.0 新架构。
[Linkis-675] 优化目录,更新所有 pom 文件的版本信息。
社区贡献
Linkis 1.0.0-RC1 的发布与 WeDataSphere 社区的贡献者密不可分。他们无私奉献自己的时间,并为文档的构建、简化部署和完善用户体验提出了许多有价值的建议。没有他们的帮助,Linkis 1.0.0-RC1 不能如此顺利地发布。
谢谢社区的所有贡献者!
升级向导
原则上,Linkis 1.0.0-RC1 的所有接口都向下兼容,因此升级对上层应用无感。
作为计算中间件,除了 PublicService 的用户配置数据外,Linkis 数据库中的其他数据无需迁移。
有关 PublicService 用户配置数据的迁移,请参阅 Linkis Wiki:Linkis1.0.0-RC1 升级文档。
WeDataSphere,BIG DATA MADE EASY.
用心做一个有温度的开源社区
~欢迎关注~
扫码关注我们
微信号公众号 : WeDataSphere
GitHub:https://github.com/WeBankFinTech/WeDataSphere
如果喜欢我们的产品或文章,请给我们的 GitHub 点上你宝贵的 star 和 fork 哦~~
版权声明: 本文为 InfoQ 作者【WeDataSphere】的原创文章。
原文链接:【http://xie.infoq.cn/article/6aee97644ad11f21af337025d】。文章转载请联系作者。
评论