Skip to content

Releases: ucarGroup/DataLink

V1.0.2-beta

25 Mar 07:59
Compare
Choose a tag to compare
V1.0.2-beta Pre-release
Pre-release

重要功能新增

开源全量同步子系统

  • 基于阿里datax进行封装改造,并提供基本的配置管理功能
  • 支持手动管理任务,也支持配置定时任务
  • 提供服务接口,支持外部系统启动、停止任务等操作

一些事项说明

  1. 此次开源的新功能,保证大部分功能可用,但因精力有限,主要目标还是供参考学习和抛砖引玉
  2. 因工作量较大,新开源的代码,一些细节没有调整完,源码中的flinker和datax,请统一理解为flinker
  3. 增量子系统进行了一些优化和小的bug修复,可放心使用

如何升级

  1. 执行如下升级sql,可从V1.0.0-beta 或 V1.0.1-beta版本,无缝升级到新版本,升级Sql

V1.0.1-beta

14 Jan 06:18
Compare
Choose a tag to compare
V1.0.1-beta Pre-release
Pre-release

相关bug修复

  1. 修复了FastJson报AutoType无法识别的问题
  2. 修复了mapper-task.xml文件中的部分sql语法错误
  3. 调整了表t_dl_sys_properties中properties_key列的长度

如何升级

  1. 如果是从0.x升级到1.0.1-beta,直接执行如下升级sql,可无缝升级到新版本,升级Sql
  2. 如果是从1.0.0-beta升级到1.0.1-beta,执行如下sql即可,ALTER TABLE t_dl_sys_properties MODIFY properties_key VARCHAR(30);

V1.0.0-beta

29 Dec 08:09
Compare
Choose a tag to compare
V1.0.0-beta Pre-release
Pre-release

重要功能新增

  1. 新增kudu-writer插件
  2. 新增kafka-writer插件
  3. 对Task新增两个维度的监控
    • 支持TaskBusyStatus监控,当Task在Writer端出现卡死情况时,系统可监控预警,参见类:TaskSyncStatusManager
    • 新增Task轨迹查看功能:精确查看在不同时间段Task执行所在的Worker机器,便于排查问题,参见类:TaskTraceMonitor
  4. 对es-writer插件进行了升级
    • 支持routing方式的同步,配置映射时可指定routing字段
    • 列名前缀支持可配置,参见类:EsMappingParameter
  5. 对Mysql-Reader进行了重写
    • 新增精确补数据功能:出现数据缺失时,不用再通过重置Task位点修复数据,也不用再通过新建临时Task修复数据,直接在现有Task发起数据修补请求即可(类似otter的自由门),对业务影响降到最小
    • 新增影子位点功能:同一Task既有主位点,又有影子位点,影子位点的意义是支持对Task的部分映射进行独立的位点重置,而不影响主流程
    • 读取Binlog时,支持多路复用,即多个MysqlTaskReader可以在内存中共用一份儿Binlog,以减轻DB的压力(建议在测试和预发环境使用,默认不开启)
    • 新增对有效同步位点进行记录的机制,有效同步位点记录的是:真正影响到Task同步映射关系的binlog消费位点,参见类:CanalReaderEffectSyncPosition

重要功能优化

  1. 对rdbms-writer插件进行了优化
    • 支持自增列不是主键情况下的同步,参见类:SqlBuilder
    • 支持更新时不仅更新发生变更的列,还能更新所有列,参见类:RdbmsWriterParameter
  2. 对hdfs-writer插进行了优化
    • 对HRecord数据类型增加参数binlog_eventtime,以支持对同一rowkey去重
    • 调用其它Worker释放租约时,url中的端口调整为动态获取,参见类:RemoteUtil
  3. 对hbase-writer插件进行了优化
  4. 对Worker运行时进行了优化
    • 调整了worker的jmx监听端口,避免同一台机器同时部署manager和worker时端口冲突
    • 优化了TaskConfigManager,支持不同分组发布不同版本的程序包(之前的实现方式,每次tryRfresh时会取所有task配置,无法支持版本兼容)
    • 优化了AbstractHandler的线程池策略,调整为Cache模式

其它优化调整

  1. 升级zkclient版本到0.10
  2. 升级mysql驱动到8.0.11
  3. 升级canal版本到1.1.3
  4. 升级druid版本到1.1.16
  5. 增加页面操作日志审计功能,可对关键操作进行行为审计
  6. 分组管理页面增加强制触发Reblance功能
  7. 同一个Task下,支持某张表同时同步到同一个目标DB的不同表(之前版本不支持)

如何升级

  1. 执行如下升级sql,可从旧版本,无缝升级到新版本,升级Sql

V0.0.2

25 Feb 07:03
Compare
Choose a tag to compare

重要变更:

1、完善PositionManager的位点管理机制,解决一个极端情况下数据丢失的bug
2、Mysql位点信息完善,调整firstEntryTime的获取方式
3、AbstractHandler调整线程池策略
4、优化Goup模式下的心跳频率
5、EsWriter插件,支持HBase类型的数据同步到ES

小需求&bugfix:

1、配置文件中的ucar_datalink数据库密码兼容明文,密文/明文均可#5
2、sh脚本格式由CRLF改为LF #10
3、DataSourceFactory、HTableFactory增加移除监听来关闭连接,避免数据库连接数过多
4、sqlserver-writer支持“有自增列且自增列不是主键”的情况
5、RDBMSMapping类型转换的bug修复

V0.0.1

11 Oct 09:10
Compare
Choose a tag to compare

DataLink开源初始版本