首页 > > > 数据迁移的心得 -SinoDB星瑞格数据库
Informix是IBM公司出品的关系数据库管理系统(RDBMS)家族。作为一个集成解决方案,它被定位为作为IBM在线事务处理(OLTP)旗舰级数据服务系统
数据迁移工具,Informix数据库迁移到oracle,mysql,goldendb等数据库,每个数据库sql规则不一样,涉及到的功能和底层数据,在字符集等方面都要做兼容,涉及的面比较广,作为Repl的测试人员,简单总结一下repl的功能和测试方法
Repl工具工作机制

Repl测试工具,根据配置链接信息,使用jdbc的方式链接到目标数据库,迁移工具灵活且强大,可以根据源端服务器的配置情况,进行不同方式的部署:


Repl测试工具支持迁移到oralce,mysql,goldendb,增量迁移时,根据etc/config.yml的文件进行配置
target: #目的数据库JDBC信息#SYS #test123456
dbType: mysql (可以是oracle,mysql,goldendb等
不同字符集之间的同步,涉及到中文数据的一个存储和转码同步的问题,比如informix数据库的字符集en_us.819,oracle或mysql的字符集为utf-8或gdk,存储过程中,utf8 的中文是3字节,GBK是2字节,informix会自动截取,可以正常插入,但是oracle等其他数据库字符编码为utf8时,不会自动截取,在增量同步过程中,涉及到转码功能和目标数据库的字段长度问题
Decode 加密与转码功能
Java解码功能
Source:
properties: #数据库JDBC连接串其他信息
INFORMIXSERVER: hdr #idsol_sinodb1210
charset: "gb18030" #GBK, ISO-8859-1, UTF-8
Target:
properties: #数据库JDBC连接串其他信息
useUnicode: true
characterEncoding: UTF-8
serverTimezone: Asia/Shanghai
useSSL: false
allowPublicKeyRetrieval: true
导入100W的数据,多进程处理,java分组
getIfxLog耗时:74秒
数据提交时间:committime:15:30:56 getIfxLog 耗时:74s

Decode解码耗时
Decode分5个进程,平均处理dat文件
数据开始处理时间为:32:10 数据结束处理时间为:33:49
Decode 解码耗时时间为:89

JAVA传送kafka耗时
因insert操作没有顺序,java启动多分组多进程处理传送kafka
Java开始时间:33:49 结束时间:34:29
Java传送kafka耗时:40s

从来公司就进入repl团队,了解到informix的repl产品功能非常强大,它的灵活性,同步多种对端数据库,采用队列技术;支持并行复制;同表可并行复制;支持远程管道压缩数据等功能,弹性架构使其部署在不同的硬件设备上都能正常工作。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70012412/viewspace-3159318/ ,如需转载,请注明出处,否则将追究法律责任。