title: Apache Linkis 1.1.1发布 authors: [Casion] tags: [version]
概述
本次发布的1.1.1版本,主要支持UDF多版本控制;支持将UDF函数的jar包/脚本物料上传至BML管理的hdfs文件系统;提交任务支持Yarn队列资源使用情况的采集和查看;管理台的ECM管理页面能支持运行中的引擎日志文件的查看;新增对数据虚拟化引擎openLooKeng的支持;修复社区反馈已知bug。
缩写:
- EC: Engineconn
- ECM: EngineConnManager
- ECP: EngineConnPlugin
- EC: EngineConn
- DMS: Data Source Manager Service
- MDS: MetaData Manager Service
- LM: Linkis Manager
- BML: BigData Material Library
新特性1 支持代理用户模式
linkis在执行用户提交的任务时,linkis的主进程会通过 sudo -u ${submit user} 切换到对应用户下,然后执行对应的引擎启动shell命令, 这就需要为每个${submit user} 提前创建对应的系统用户,并且配置好相关的环境变量。 对于新用户,需要一系列的环境的初始化准备工作,如果频繁的用户变化,会增大运维成本,而且用户过多,没法针对单个用户配置资源,资源之间无法很好的管控。代理用户模式的支持,能够实现用户A的任务代理给指定的代理用户执行,可以将执行入口统一收敛。后续DSS计划集成linkis的代理用户模式(DSS计划版本为1.1.0),能够通过DSS管理台页面,对当前登陆用户的代理用户选择。
新特性2 UDF支持多版本控制
1.1.1版本之前无法支持UDF多版本的控制,无法对某个UDF函数的历史版本进行查看和回退,并且UDF函数jar包/脚本物料是存储在服务器的主机上,如果更换服务器的话,需要做UDF函数jar包/脚本物料的同步迁移。 新增linkis_ps_udf_version表 ,以支持UDF函数的多版本存储,依赖于目前linkis已有的BML物料管理功能,将udf函数的jar/脚本物料上传至BML管理的hdfs文件系统中。 具体使用方式见:https://linkis.apache.org/zh-CN/docs/latest/../user-guide/udf
新特性3 新增数据虚拟化openLooKeng引擎插件
openLooKeng用于支持数据探索、即席查询和批处理,具有100+毫秒至分钟级的近实时时延,而无需移动数据。openLooKeng还支持层次化部署,使地理上远程的openLooKeng集群能够参与相同的查询。利用其跨区域查询计划优化能力,涉及远程数据的查询可以达到接近“本地”的性能。 新增的openLooKeng引擎插件可以让Linkis拥有数据虚拟化的能力,支持提交跨源异构查询、跨域跨DC查询型任务。具体使用方式见:https://linkis.apache.org/zh-CN/docs/latest/engine-usage/openlookeng
新特性4 引擎进程日志文件页面查看
对于启动的引擎进程,能够在管理台>ECM管理>某ECM具体引擎列表页面,直接查看进程的运行日志文件内容。方便某些异常问题的排查,以及引擎运行时,关键日志信息的查看。
增强点
修复功能
- [Entrance][Linkis-1623] 修复LogPath和ResultSetPath错误的将submitUser使用为executeUser
- [Entrance][Linkis-1640] 修复LogReader使用单例InputStream,存在日志丢失,无法读取最新的持久化日志的问题
- [Entrance][Linkis-2009] 修复Entrance 服务存在的线程资源未关闭导致的内存泄漏的问题
- [Entrance][Linkis-1901] 将EntranceFactory中的缓存替换为Guava Cache,修复用户修改了并发参数后无法生效的问题
- [Entrance][Linkis-1986] 修复Entrance实时日志获取行数异常,导致获取的日志重复问题
- [ECM][Linkis-1714] 通过减少EC Java默认内存大小以及添加EC应用程序的重试日志,优化EC出现的“Cannot allocate memory”的异常问题
- [ECM][Linkis-1806] 优化EC的生命周期处理逻辑,当ECM 启动EC因为队列资源不足超时等原因导致状态为Failed时候,将EC进程kill掉
- [Common][Linkis-1721] 修复Kerberos认证失败时, hdfsFileSystem未进行刷新的问题
- [UDF][Linkis-1728] 优化/api/rest_j/v1/udf/all的API接口偶发的查询耗时高的问题
- [Config][Linkis-1859] 修复管理台参数配置saveFullTree接口,主键重复异常问题
- [Client][Linkis-1739] 修复ujes-client的请求中,存在的参数拼写错误导致参数传递失败问题
- [Client][Linkis-1783] 修复任务创建人creator参数默认配置不生效的问题
- [Client][Linkis-1821] 修复ujes-client 请求实体类GetTableStatisticInfoAction参数缺失问题
- [EC][Linkis-1765] 修复EC 在任务运行时触发tryShutdown存在的阻塞卡住问题
- [LM-AppManager][Linkis-1814] 修复EngineRestfulApi的createEngineConn接口返回response信息有误,导致客户端调用出现NPE的问题。
- [Web][Linkis-1972] 移除管理台历史原因遗留但未使用的dss相关接口代码
- [EC-Spark][Linkis-1729] 添加SparkPreExecutionHook函数,兼容Linkis之前的老包名(com.webank.wedatasphere.linkis)
- [EC-JDBC][Linkis-1851] 修复jdbc引擎,一次任务执行中存在多条sql语句时无法正常执行的问题
- [EC-JDBC][Linkis-1961] 修复jdbc引擎启动因SLF4J依赖问题导致日志无法正常打印的问题
- [Gateway][Linkis-1898] 修复GatewaySSOUtils用户成功登录生成cookie时,无法设置初始域名的问题
其他
- [License][Linkis-2110] 移除了源码中的二进制文件.mvn/wrapper/maven-wrapper.jar,调整.mvn/*相关的LICENSE说明
- [License][Linkis-2113] 升级 py4j-0.10.7-src.zip 至 py4j-0.10.9.5-src.zip,解决0.10.7版本中部分文件license协议不明确问题,更新py4j-*.src的license文件
致谢
Apache Linkis 1.1.1的发布离不开Linkis社区的贡献者,感谢所有的社区贡献者,包括但不仅限于以下Contributors:
详细指引
本版本总览: https://linkis.apache.org/zh-CN/docs/latest/release
详细安装部署见指引:https://linkis.apache.org/zh-CN/docs/latest/deployment/deploy-quick
官方下载链接:https://linkis.apache.org/zh-CN/download/main