DataWorks支持通过向导模式或脚本模式配置离线同步任务,您可以将分库分表数据同步至目标单表。本文以同步MySQL分库分表数据为例进行说明。
前提条件
已准备好要同步的多个数据源,详情请参见支持的数据源与读写插件。
背景信息
分库分表要求表结构一致,因此,配置同步任务时,字段映射将按照第一张表结构进行展示。
支持MySQL(支持向导模式)、PolarDB(支持向导模式)、AnalyticDB(支持向导模式)、SQLServer、Oracle、PostgreSQL等类型的数据源,配置分库分表同步任务。
操作步骤
配置分库分表同步任务。
向导模式配置分库分表:在数据来源区域单击+编辑数据来源,添加对应的数据源。完整的任务配置步骤请参见通过向导模式配置离线同步任务。
说明仅MySQL、PolarDB、AnalyticDB支持通过向导模式添加分库分表,其他数据库请切换至脚本模式配置分库分表同步。
脚本模式配置分库分表:脚本示例如下,完整的任务配置步骤请参见通过脚本模式配置离线同步任务。
重要实际运行时,请删除下述代码中的注释。
{ "type":"job", "version":"2.0", "steps":[ { "stepType":"mysql", "parameter":{ "envType":0, "column":[ "id", "name" ], "socketTimeout":3600000, "tableComment":"", "connection":[ //根据分库数配置connection { "datasource":"datasourceName1", //分库分表的数据源1 "table":[ //分库分表的Table列表1 "tb1" ] }, { "datasource":"datasourceName2", //分库分表的数据源2 "table":[ //分库分表的Table列表2 "tb2", "tb3" ] } ], "useSpecialSecret":true,//各个数据源使用各自的密码 "where":"", "splitPk":"id", "encoding":"UTF-8" }, "name":"Reader", "category":"reader" }, { "stepType":"odps", "parameter":{ "partition":"pt=${bizdate}", "truncate":true, "datasource":"odpsname", "envType":0, "isSupportThreeModel":false, "column":[ "id", "name" ], "emptyAsNull":false, "tableComment":"", "table":"t1", "consistencyCommit":false }, "name":"Writer", "category":"writer" } ], "setting":{ "executeMode":null, "errorLimit":{ "record":"" }, "speed":{ "concurrent":2, "throttle":false } }, "order":{ "hops":[ { "from":"Reader", "to":"Writer" } ] } }
文档内容是否对您有帮助?