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/WeBankFinT...
https://gitee.com/WeBankFinTe...
新版简介
- 丰盛的底层计算存储引擎反对度
- 已反对的计算存储引擎: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.
用心做一个有温度的开源社区