| --- |
| 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具体引擎列表页面,直接查看进程的运行日志文件内容。方便某些异常问题的排查,以及引擎运行时,关键日志信息的查看。 |
| |
|  |
| |
| ## 增强点 |
| |
| * \[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 |