blob: a6cf43119ec28b262c9a927cefa50f06b8e51296 [file] [log] [blame] [view]
---
title: Apache Linkis(Incubating) 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具体引擎列表页面,直接查看进程的运行日志文件内容。方便某些异常问题的排查,以及引擎运行时,关键日志信息的查看。
![image](https://user-images.githubusercontent.com/7869972/168042702-1d0f998d-59d8-4a19-8803-a2a913bd4e5f.png)
## 增强点
* \[Gateway][[Linkis-1430]](https://github.com/apache/incubator-linkis/issues/1430) 针对Token认证方式,Token的获取由配置文件调整为数据库表
* \[Entrance][[Linkis-1642]](https://github.com/apache/incubator-linkis/pull/1642) 优化excel导出接口resultsetToExcel:支持传递下载数据的行数
* \[Entrance][[Linkis-1733]](https://github.com/apache/incubator-linkis/pull/1733) 添加支持更多与run_date相关的默认时间变量
* \[Entrance][[Linkis-1794]](https://github.com/apache/incubator-linkis/pull/1794) 添加写入限制结果集单行的数据大小,优化大结果集会导致的OOM问题
* \[DMS-Common][[Linkis-1757]](https://github.com/apache/incubator-linkis/issues/1757) 支持配置Hive的元数据管理员,管理员通过接口可以获取hive的所有库表的元数据信息
* \[Common][[Linkis-1799]](https://github.com/apache/incubator-linkis/pull/1799) 优化服务日志的分割:将日志历史切分时间从一天调整为一小时
* \[Common][[Linkis-1921]](https://github.com/apache/incubator-linkis/pull/1921) 优化Jackson的依赖管理方式:通过jackson-bom统一管理jackson依赖,并升级至2.11.4版本
* \[ECM][[Linkis-1779]](https://github.com/apache/incubator-linkis/issues/1779) 优化ECM实例的状态监控逻辑,增加心跳上报时间的判断,修复可能因为Eureka的性能问题导致错误判断问题
* \[ECM][[Linkis-1930]](https://github.com/apache/incubator-linkis/pull/1930) 优化资源检查时未检查ECM资源的问题
* \[Web][[Linkis-1596]](https://github.com/apache/incubator-linkis/issues/1596) 优化管理台任务日志查看的接口使用,修复对于运行中的job,日志无法及时刷新显示的问题
* \[Web][[Linkis-1650]](https://github.com/apache/incubator-linkis/issues/1650) linkis管理台-全局历史页面,支持通过创建者信息搜索过滤历史任务数据
## 修复功能
* \[Entrance][[Linkis-1623]](https://github.com/apache/incubator-linkis/issues/1623) 修复LogPath和ResultSetPath错误的将submitUser使用为executeUser
* \[Entrance][[Linkis-1640]](https://github.com/apache/incubator-linkis/issues/1640) 修复LogReader使用单例InputStream,存在日志丢失,无法读取最新的持久化日志的问题
* \[Entrance][[Linkis-2009]](https://github.com/apache/incubator-linkis/issues/2009) 修复Entrance 服务存在的线程资源未关闭导致的内存泄漏的问题
* \[Entrance][[Linkis-1901]](https://github.com/apache/incubator-linkis/issues/1901) 将EntranceFactory中的缓存替换为Guava Cache,修复用户修改了并发参数后无法生效的问题
* \[Entrance][[Linkis-1986]](https://github.com/apache/incubator-linkis/issues/1986) 修复Entrance实时日志获取行数异常,导致获取的日志重复问题
* \[ECM][[Linkis-1714]](https://github.com/apache/incubator-linkis/pull/1714) 通过减少EC Java默认内存大小以及添加EC应用程序的重试日志,优化EC出现的"Cannot allocate memory"的异常问题
* \[ECM][[Linkis-1806]](https://github.com/apache/incubator-linkis/pull/1806) 优化EC的生命周期处理逻辑,当ECM 启动EC因为队列资源不足超时等原因导致状态为Failed时候,将EC进程kill掉
* \[Common][[Linkis-1721]](https://github.com/apache/incubator-linkis/pull/1721) 修复Kerberos认证失败时, hdfsFileSystem未进行刷新的问题
* \[UDF][[Linkis-1728]](https://github.com/apache/incubator-linkis/pull/1728) 优化/api/rest_j/v1/udf/all的API接口偶发的查询耗时高的问题
* \[Config][[Linkis-1859]](https://github.com/apache/incubator-linkis/issues/1859) 修复管理台参数配置saveFullTree接口,主键重复异常问题
* \[Client][[Linkis-1739]](https://github.com/apache/incubator-linkis/pull/1739) 修复ujes-client的请求中,存在的参数拼写错误导致参数传递失败问题
* \[Client][[Linkis-1783]](https://github.com/apache/incubator-linkis/pull/1783) 修复任务创建人creator参数默认配置不生效的问题
* \[Client][[Linkis-1821]](https://github.com/apache/incubator-linkis/pull/1821) 修复ujes-client 请求实体类GetTableStatisticInfoAction参数缺失问题
* \[EC][[Linkis-1765]](https://github.com/apache/incubator-linkis/issues/1765) 修复EC 在任务运行时触发tryShutdown存在的阻塞卡住问题
* \[LM-AppManager][[Linkis-1814]](https://github.com/apache/incubator-linkis/pull/1814) 修复EngineRestfulApi的createEngineConn接口返回response信息有误,导致客户端调用出现NPE的问题。
* \[Web][[Linkis-1972]](https://github.com/apache/incubator-linkis/pull/1972) 移除管理台历史原因遗留但未使用的dss相关接口代码
* \[EC-Spark][[Linkis-1729]](https://github.com/apache/incubator-linkis/pull/1729) 添加SparkPreExecutionHook函数,兼容Linkis之前的老包名(com.webank.wedatasphere.linkis)
* \[EC-JDBC][[Linkis-1851]](https://github.com/apache/incubator-linkis/issues/1851) 修复jdbc引擎,一次任务执行中存在多条sql语句时无法正常执行的问题
* \[EC-JDBC][[Linkis-1961]](https://github.com/apache/incubator-linkis/issues/1851) 修复jdbc引擎启动因SLF4J依赖问题导致日志无法正常打印的问题
* \[Gateway][[Linkis-1898]](https://github.com/apache/incubator-linkis/pull/1898) 修复GatewaySSOUtils用户成功登录生成cookie时,无法设置初始域名的问题
## 其他
* \[License][[Linkis-2110]](https://github.com/apache/incubator-linkis/issues/2110) 移除了源码中的二进制文件.mvn/wrapper/maven-wrapper.jar,调整.mvn/*相关的LICENSE说明
* \[License][[Linkis-2113]](https://github.com/apache/incubator-linkis/pull/2113) 升级 py4j-0.10.7-src.zip 至 py4j-0.10.9.5-src.zip,解决0.10.7版本中部分文件license协议不明确问题,更新py4j-*.src的license文件
## 致谢
Apache Linkis(incubating) 1.1.1的发布离不开Linkis社区的贡献者,感谢所有的社区贡献者,包括但不仅限于以下Contributors:
<table align="center">
<tr>
<td align="center">AbnerHung</td>
<td align="center">Alexkun</td>
<td align="center">CCweixiao</td>
<td align="center">Davidhua1996</td>
</tr>
<tr>
<td align="center">Fuu3214</td>
<td align="center">Liveipool</td>
<td align="center">barry8023</td>
<td align="center">casionone</td>
</tr>
<tr>
<td align="center">demonray</td>
<td align="center">husofskyzy</td>
<td align="center">jackxu2011</td>
<td align="center">legendtkl</td>
</tr>
<tr>
<td align="center">lizheng920625</td>
<td align="center">maidangdang44</td>
<td align="center">peacewong</td>
<td align="center">seedscoder</td>
</tr>
</table>
## 详细指引
本版本总览: https://linkis.apache.org/zh-CN/docs/latest/release
详细安装部署见指引:https://linkis.apache.org/zh-CN/docs/latest/deployment/quick-deploy
官方下载链接:https://linkis.apache.org/zh-CN/download/main