Release v3.8.0
Abstract
TIS的v3.8.0
版本终于要与大家见面了,v3.8.0
着重在以下几方面进行了功能加强和升级。
-
支持利用
Flink Checkpoint
恢复因意外宕机而中断的Flink Job任务用户运行的Flink Job 任务经常会因为各种原因导致意外停止,例如:机房断电等。如需要恢复中断的Flink
Job需要用户事先手动触发Savepoint存储来恢复。而机房断电属于不可预测事件,用户无法提前预测,所以只能对中断的Flink Job进行重新部署,这个流程特别费时,且之前保存的StateBackend也会丢失。因此,在TIS中提供了通过Flink Checkpoint机制来恢复Job的方式,用户只需要在部署Flink
Job过程中,开启Checkpoint机制、并设置持久化StatebackEnd,就可以方便恢复因意外中断的Flink Job任务。datavane/tis#224 -
与Doris最新版本的兼容性提升
使用Doris最新版本2.0.1与TIS兼容性优化,对
Sequence列模型
与批量删除
的设置体验进行优化,为用户提供整库导入Doris实现实时数仓方案提供了最佳技术手段。 -
提供TIS插件开发工具
随着TIS功能不断壮大,会有越来越多的开发者加入到TIS的生态构建中来。 TIS内部使用了微内核架构设计,践行OCP原则(对修改封闭,对新加功能开放),为了让用户愉快地加入到TIS生态构建中来,从
v3.8. 0
版本开始,会陆续提供一系列工具和技术分享文档,让用户可以独立地开发新的大数据集成插件,或者完善既有的TIS插件功能以满足自己的业务需求。新添加的插件参考文档:
-
Hive Reader 支持
T+1离线分析会将计算结果导入Hive的分布式文件系统中。本版本(v3.8.0)提供Hive Reader用户可以通过简单设置 将Hive中的数据导入到Doris、ElasticSearch、StarRocks、各种关系型数据库中。
-
重构 Aliyun OSS、FTP、HDFS
针对分布式文件端类型的支持,之前在TIS中对以上各种类型的数据端是各自实现的,但是在实现过程发现,每种数据类型都有压缩,数据Format(CSV、TEXT)的逻辑在需要重复实现,不同的仅仅是每种类型的文件流的获取方式。
在本版本(v3.8.0)中,将文件流获取的方式单独抽取出来,其他执行逻辑实现重用。这样有利于在TIS中对分布式式文件类型端的维护,也可大大简化今后在TIS中接入同类型数据端的复杂程度。datavane/tis#253 -
重构MongoDB Reader功能
- 支持MongoDB,多Collection选择,
- 针对MongoDB没有固定Schema的特性,TIS中加入了预判MongoDB Colection Scheam的功能,原理是预先从MongoDB
Collection中读取一定数量的记录数,TIS中会针对记录各Column值来猜测列类型,最终再由用户来确定类型进行微调。这样可以免去用户为MongoDB
Collection设置Schema的繁琐流程,从而大大提高部署效率。 - 针对MongoDB Collection的 提供给用户拆解Document类型的字段的途径、手段。可以将Document字段中的内容,打平、Sink到下游数据端中。
-
优化Kerberos认证支持
优化TIS中kerberos认证的支持,支持Hive、HDFS等数据端 datavane/tis#127
-
云原生方面的支持
支持Aliyun HDFS 的JindoFS类型的导入方式,通过 JindoFS类型的导入方式,性能比传统HDFS效率高3倍。
-
添加达梦数据库支持
支持在TIS中对达梦数据库批量读取,和批量/增量写入功能
Bug Fix
- [bug] elastic
java.sql.Timestamp
写入失败#272 - [doris] 类型com.qlangtech.tis.plugin.datax.seq.SeqKey转型错误#270
- mysql到mysql端实时同步问题,修改源表字段内容,目标表不会更新源表修改的内容,而是重新生成一条新的记录#267
- mysql_to_doris构建实时同步任务失败#261
- [bug]构建MySQL到StarRocks, Flink实时同步时,decimal-> 类型值为NULL#243
- [bug]目标端为StarRocks,目标端为MySQL内有 decmial 字段同步到 有误#242
- [BUG] hiveserver2连接配置数据库名无法携带参数#240
- [bug] doris create table DDL error with sequence_col#239
- [bug] Flink reserved key led to error 源数据库的表中存在flink保留字段,导致创建增量同步时异常#238
- [feat]希望可以删除界面无用的实例信息数据,避免干扰#237
- TIS Action执行失败 导致线程绑定资源没有被回收#236
- [bug] 使用flink-cdc的snapshot快照功能得到的date datatime类型的值有问题#232
- [mysql->doris] debezium中连接 mysql8服务端报 #203
- FTP Source map to MySQL create table DDL error#151
Others
- 替换Doris DDL Date 类型#266
- Clickhouse 执行全量数据同步初始化数据表出错#258
- 添加MongoDB数据源报错,MongoDB版本号为5.01.2#254
- 支持利用checkpoint来恢复(restore)Flink job#229
New Feature
- Doris增量实时通道主键设置流程去除#265
- 支持达梦数据库读写支持#262
- FTP、OSS、HDFS统一成T-DFS#253
- [feat] 实现CSV文档Sink写入#241
- [feat] SinkTabPropsExtends 主键候选列修改#235
- [feat] 提供TIS 插件开发者工具#233
- 支持doris sequence列模型#230
- [feat]Flink任务由于机房停电长时间宕机再次启动丢失数据#224
- [feat]增量实例需要添加一个 刷新按钮#220
- 实现一个hive Reader插件#201
- [bug]添加sql server数据源,校验失败#186
- upgrade fastjson version for security issue#152
- [SUPPORT] 希望连接hdfs和hive等组件支持kerberos认证#127
Installation
- TIS Package 安装说明
- TIS Flink Standalone Package 安装说明
- TIS Zeppeline NoteBook Installation安装说明