刘华
实验室:JS测试器
分类专栏
hadoop2篇
mysql1篇
nginx8篇
java5篇
架构设计3篇
信息安全6篇
前端开发2篇
数据同步6篇
AI7篇
其他9篇

SymmetricDS同步转换规则

liuhua-2020/4/9 22:16:17

SymmetricDS同步转换规则:

1、SymmetricDS的同步转换可以实现异构表之间的数据同步,并可根据需要对源值进行各种转换。

2、转换配置:先配置转换表(sym_transform_table),如需转换字段,再配置字段的转换(sym_transform_column)。

3、一个表如果有多个字段的转换,需要在相同的转换ID下配置字段转换。

4、如果转换涉及到参数配置或者依赖于特定资源,为减小配置工作量,可以通过使用转换点,来实现只在中心点转换。实现方式为:从中心节点向边缘节点的转换,转换点配置为抽取(EXTRACT),从边缘节点到中心节点的转换,转换点配置为加载(LOAD)。

5、预定义的转换类型包括复制copy、去除remove、取变量值variable、加变化值additive、字符串截取substring、按字符数取左left、按字节数取左bleft、sql查询lookup、查出多行multiplybeanShell脚本bsh、自增标识identity、数学计算math、变化才复制copyIfChanged、值映射valueMap、列转行columnsToRows、替换空值isEmpty、替换空白isBlank、替换null值isNull、删除列deletedColumns

6、对于预定义的转换无法满足需要的情况,可以编写java代码进行自定义的转换。实现方式为:

1)编写新的转换类继承IColumnTransform,实现transform方法,在其中实现转换逻辑,将源字段值转换为目标字段值。转换类可以拥有属性配置,也可以引用外部的jar包;

2)编译打包,将jar包及其依赖的jar放置在symmetricDS根目录下的web\WEB-INF\lib中;

3)在conf/symmetric-extensions.xml中加上Spring配置,将转换类配置为bean,如有属性,则可为属性赋值;

4)在sym_transform_column中配置转换类型为bean的id。


小钉 京ICP备16032583号-1