SQLServer同步到DWS作业配置
支持的源端和目的端数据库版本
源端数据库 |
目的端数据库 |
---|---|
SQLServer数据库(企业版2016、2017、2019、2022版本,标准版2016 SP2及以上版本、2017、2019、2022版本) |
DWS集群(8.1.3、8.2.0及以上版本(除DWS 3.0)) |
数据库账号权限要求
在使用Migration进行同步时,源端和目的端所使用的数据库账号需要满足以下权限要求,才能启动实时同步任务。不同类型的同步任务,需要的账号权限也不同,详细可参考下表进行赋权。
类型名称 |
权限要求 |
---|---|
源数据库连接账号 |
需要具备sysadmin权限,或者view server state权限以及待同步数据库的db_datareader或db_owner权限。
|
目标数据库连接账号 |
目标数据库的每张表必须具有如下权限:INSERT、SELECT、UPDATE、DELETE、CONNECT、CREATE。 |

- 建议创建单独用于Migration任务连接的数据库账号,避免因为数据库账号密码修改,导致的任务连接失败。
- 连接源和目标数据库的账号密码修改后,请同步修改管理中心对应的连接信息,避免任务连接失败后自动重试,导致数据库账号被锁定影响使用。
支持的同步对象范围
在使用Migration进行同步时,不同类型的链路,支持的同步对象范围不同,详细情况可参考下表。
类型名称 |
使用须知 |
---|---|
同步对象范围 |
|
注意事项
除了数据源版本、连接账号权限及同步对象范围外,您还需要注意的事项请参见下表。
类型名称 |
使用和操作限制 |
---|---|
数据库限制 |
|
使用限制 |
通用: 实时同步过程中,不支持IP、端口、账号、密码修改。 全量同步阶段: 任务启动和全量数据同步阶段,请不要在源数据库执行DDL操作,否则可能导致任务异常。 增量同步阶段:
常见故障排查: 在任务创建、启动、全量同步、增量同步、结束等过程中,如有遇到问题,可先参考常见问题章节进行排查。 |
其他限制 |
|
操作步骤
本小节以Microsoft SQL Server到DWS的实时同步为示例,介绍如何配置Migration实时集成作业。配置作业前请务必阅读使用前自检概览, 确认已做好所有准备工作。
- 参见新建实时集成作业创建一个实时集成作业并进入作业配置界面。
- 选择数据连接类型:源端选SQLServer,目的端选DWS。
图2 选择数据连接类型
- 选择集成作业类型:同步类型默认为实时,同步场景包含整库场景。
图3 选择集成作业类型
- 配置网络资源:选择已创建的SQLServer、DWS数据连接和已配置好网络连接的migration资源组。
图4 选择数据连接及migration资源组
无可选数据连接时,可单击“新建”跳转至管理中心数据连接界面,单击“创建数据连接”创建数据连接,详情请参见配置DataArts Studio数据连接参数进行配置。
无可选migration资源组时,可单击“新建”跳转至购买migration资源组页面创建migration资源组配置,详情请参见购买创建数据集成资源组增量包进行配置。
- 检测网络连通性:数据连接和migration资源组配置完成后需要测试整个迁移任务的网络连通性,可通过以下方式进行数据源和migration资源组之间的连通性测试。
- 单击展开“源端配置”触发连通性测试,会对整个迁移任务的连通性做校验。
- 单击源端和目的端数据源和migration资源组中的“测试”按钮进行检测。
- 配置源端参数。
选择需要迁移的SQLServer库表。图5 选择库表
库与表均支持自定义选择,即可选择一库一表,也可选择多库多表。
- 配置目的端参数。
- 源库表和目标匹配策略。
表5 源库表和目标匹配策略 同步场景
配置方式
整库
- Schema匹配策略。
- 与来源库同名:数据将同步至与来源SQLServer库名相同的DWS Schema中。
- 自定义:数据将同步至自行指定的DWS Schema中。
- 表匹配策略。
- 与来源表同名:数据将同步至与来源SQLServer表名相同的DWS表中。
- 自定义:数据将同步至自行指定的DWS表中。
图6 整库场景下源库表和目标匹配策略说明:
自定义匹配策略时,支持用内置变量#{source_db_name}和#{source_table_name}标志来源的库名和表名,其中表匹配策略必须包含#{source_table_name}。
- Schema匹配策略。
- DWS参数配置。
图7 DWS配置项
表6 DWS配置项 配置项
默认值
单位
配置说明
写入模式
UPSERT
-
- UPSERT MODE:批量更新入库模式。
- COPY MODE:DWS专有的高性能批量入库模式。
批写最大数据量
50000
条
单批次写入DWS数据的条数,可根据表数据大小和作业内存使用适当调整。
定时批写时间间隔
3
秒
支持配置每批次数据写入DWS的时间间隔。
高级配置
-
-
支持通过参数配置部分高级功能,参数详情可参考DWS高级配置一览表。
表7 DWS高级配置一览表 参数名
参数类型
默认值
单位
参数说明
sink.buffer-flush.max-size
int
512
MB
写入DWS时每批数据的最大字节数,可根据作业配置内存和数据大小适当调整。
sink.keyby.enable
boolean
true
-
数据分流开关,在多并发场景下开启数据分流可将数据按规则分配给不同的工作进程写入目的端,可提高写入性能。
sink.keyby.mode
string
table
-
数据分流模式,可选填写:
- pk:按数据主键值进行分流。
- table:按表名进行分流。
说明:
- 多并发场景下,若开启DDL功能,只能按表名分流,否则可能导致数据不一致。
- 确保不会有DDL时,可以选择按主键分流,多并发场景下可提高写入性能。
sink.field.name.case-sensitive
boolean
true
-
同步数据大小写敏感开关,开启后在同步数据时对库名、表名、字段名大小写均敏感。
sink.verify.column-number
boolean
false
-
校验数据列数的开关,链路默认以同名映射方式同步数据,不检验是否所有列均同步。
开启本开关后,若源端与目的端列数不同将认为是数据不一致的场景,导致作业异常。
sink.server.timezone
string
本地时区
-
连接目的端数据库时指定的session时区,支持时区标准写法,例如UTC+8等。
logical.delete.enabled
boolean
false
-
逻辑删除开关,开启本开关后,需要目的端包含删除标记列,在源端删除数据,不会将目的端对应的数据删除,而是将删除标记列设为true,表示该数据在源端已不存在。
logical.delete.column
string
logical_is_deleted
-
逻辑删除标记列名称,默认为logical_is_deleted,支持用户自定义。
- 源库表和目标匹配策略。
- 刷新源表和目标表映射,检查映射关系是否正确,同时可根据需求修改表属性、添加附加字段,并通过“自动建表”能力在目的端DWS数据库中建出相应的表。
图8 源表与目标表映射
- 附加字段编辑:单击操作列“附加字段编辑”可为目的端的DWS表中增加自定义字段,同时附加字段也会额外加入到DWS表的建表中。用户可以在已有的源表字段基础上添加多个附加字段,并自定义字段名、选择字段类型、填写字段值。
- 字段名称:目的端DWS表新增字段的名称。
- 字段类型:目的端DWS表新增字段的类型。
- 字段值:目的端DWS表新增字段的取值来源。
表8 附加字段取值方式 类型
示例
常量
支持数字、字母、中文、特殊字符。彩色表情字符可能导致作业提交失败,需谨慎使用。
- 自动建表:单击“自动建表”可按照已配置映射规则在目的端数据库自动建表,成功后表建立方式会显示为使用已有表。
图9 自动建表
- 附加字段编辑:单击操作列“附加字段编辑”可为目的端的DWS表中增加自定义字段,同时附加字段也会额外加入到DWS表的建表中。用户可以在已有的源表字段基础上添加多个附加字段,并自定义字段名、选择字段类型、填写字段值。
- 配置任务属性。
表9 任务配置参数说明 参数
说明
默认值
执行内存
作业执行分配内存,跟随处理器核数变化而自动变化。
8GB
处理器核数
范围:2-32。
每增加1处理核数,则自动增加4G执行内存和1并发数。
2
并发数
作业执行支持并发数。该参数无需配置,跟随处理器核数变化而自动变化。
1
自动重试
作业失败时是否开启自动重试。
否
最大重试次数
“自动重试”为是时显示该参数。
1
重试间隔时间
“自动重试”为是时显示该参数。
120秒
添加自定义属性
支持通过自定义属性修改部分作业参数及开启部分高级功能,详情可参见任务性能调优章节。
-
- 提交并运行任务。
作业配置完毕后,单击作业开发页面左上角“提交”,完成作业提交。
图10 提交作业提交成功后,单击作业开发页面“启动”按钮,在弹出的启动配置对话框按照实际情况配置同步位点参数,单击“确定”启动作业。
图11 启动配置表10 启动配置参数 参数
说明
同步模式
- 增量同步:从指定时间位点开始同步增量数据。
- 全量+增量:先同步全量数据,随后实时同步增量数据。
时间
增量同步需要设置该参数,指示增量同步起始的时间位点。
说明:配置的位点时间早于CDC日志最早时间点时,默认会以日志最新时间点开始消费。
- 监控作业。
通过单击作业开发页面导航栏的“前往监控”按钮,可前往作业监控页面查看运行情况、监控日志等信息,并配置对应的告警规则,详情请参见实时集成任务运维。
图12 前往监控
性能调优
若链路同步速度过慢,可参考参见任务性能调优章节中对应链路文档进行排查及处理。