计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
态势感知 SA
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive
本文导读

配置离线处理集成作业

更新时间:2025-02-19 GMT+08:00

数据集成支持创建离线作业,通过在界面勾选源端数据和目的端数据,并结合为其配置的参数,实现将源端单表、分库分表、整库的全量或增量数据周期性同步至目标数据表。

本文为您介绍离线同步任务的常规配置,各数据源配置存在一定差异,请以配置作业源端参数配置作业目的端参数为准。

约束限制

需要源端和目的端字段类型及精度设置一致,否则可能导致作业运行失败。
说明:

同步任务源端和目标端字段类型需要注意精度,如果目标端字段类型最大值小于源端最大值(或最小值大于源端最小值,或精度低于源端精度),可能会导致写入失败或精度被截断的风险。

前提条件

  • 已完成数据连接的创建,且创建的连接必须已勾选数据集成选项,详情请参见创建DataArts Studio数据连接
  • 存在正在运行的CDM集群,详情请参见创建CDM集群
    说明:

    DataArts Studio实例中已经包含一个CDM集群(试用版除外),如果该集群已经满足需求,您无需再购买数据集成增量包,可以跳过这部分内容。如果您需要再创建新的CDM集群,请参考购买批量数据迁移增量包,完成购买数据集成增量包的操作。

  • CDM集群与待同步数据源可以正常通信。
    说明:
    • 当CDM集群与其他云服务所在的区域、VPC、子网、安全组一致时,可保证CDM集群与其他云服务内网互通,无需专门打通网络。
    • 当CDM集群与其他云服务所在的区域和VPC一致、但子网或安全组不一致时,需配置路由规则及安全组规则以打通网络。配置路由规则请参见如何配置路由规则章节,配置安全组规则请参见如何配置安全组规则章节。
    • 当CDM集群与其他云服务所在的区域一致、但VPC不一致时,可以通过对等连接打通网络。配置对等连接请参见如何配置对等连接章节。

      注:如果配置了VPC对等连接,可能会出现对端VPC子网与CDM管理网重叠,从而无法访问对端VPC中数据源的情况。推荐使用公网做跨VPC数据迁移,或联系管理员在CDM后台为VPC对等连接添加特定路由。

    • 当CDM集群与其他云服务所在的区域不一致时,则需要通过公网或者专线打通网络。通过公网互通时,需确保CDM集群已绑定EIP、CDM云上安全组出方向放通云下数据源所在的主机、数据源所在的主机可以访问公网且防火墙规则已开放连接端口。
    • 另外,如果创建了企业项目,则企业项目也会影响CDM集群与其他云服务的网络互通,只有企业项目一致的云服务才能打通网络。

操作步骤

  1. 参见新建离线处理集成作业创建一个离线处理集成作业。
  2. 类型配置。
    图1 类型配置
    1. 配置数据连接类型,包含配置源端数据类型和目的端数据类型,支持的数据类型请参见支持的数据源
    2. 选择集成作业类型。
      1. 同步类型:默认为离线,不可更改。
      2. 同步场景:支持单表、分库分表和整库三种同步方式,具体支持的数据源请参见支持的数据源
    3. 设置网络资源配置。
      1. 选择已创建的源端数据连接,且创建的连接必须已勾选数据集成选项。连接不存在时可参见创建DataArts Studio数据连接创建所需连接。

        需要测试数据源端和资源组之间网络是否可用,不可用时根据界面提示修改。

      2. 选择资源组,集群创建可参见创建CDM集群

        选多个集群时系统会随机下发任务,故需要多个集群时版本规格建议选择集群版本一致的集群,否则可能因为集群版本不一致导致作业失败。

      3. 选择已创建的目的端数据连接,且创建的连接必须已勾选数据集成选项。连接不存在时可参见创建DataArts Studio数据连接

        需要测试数据连接是否可用,不可用时根据界面提示修改。

  3. 配置源端数据参数。
    各数据源及各同步场景配置存在一定差异,选择源端配置后,请参见配置作业源端参数配置作业参数。
    表1 源端需要配置的作业参数

    同步场景

    源端需要配置参数

    字段映射

    单表

    • 基本参数
    • 高级属性

    支持

    分库分表

    • 选择库表方式:精准匹配或正则匹配
    • 高级属性

    支持

    整库迁移

    • 添加源数据,选择需要迁移的库表
    • 高级属性

    不支持

  4. 配置目的端数据参数。
    各数据源及各同步场景配置存在一定差异,选择目的端配置后,请参见配置作业目的端参数配置作业参数。
    表2 目的端需要配置的作业参数

    同步场景

    目的端需要配置参数

    字段映射

    单表

    • 基本参数
    • 高级属性

    支持

    分库分表

    • 基本参数
    • 高级属性

    支持

    整库迁移

    选择库匹配策略和表匹配策略

    不支持

  5. 配置字段映射关系。

    配置作业源端参数和目的端参数后,需要配置源端和目的端列的映射关系,配置字段映射关系后,任务将根据字段映射关系,将源端字段写入目标端对应类型的字段中。

    1. 字段映射配置:选择字段映射关系、设置字段批量映射规则。
      • 字段映射关系
        • 同名映射:对字段名称相同的字段进行映射。使用已有数据进行相同列名的字段自动映射。
        • 同行映射:源表和目标表的字段名称不一致,但字段对应相同行的数据进行映射。查询源端和目的端的字段,再进行相同行的字段自动映射。
      • 字段批量映射:源端配置使用SQL语句为是时不显示该参数。

        批量输入字段映射数据,一行输入一个字段映射,等号左边为源表字段右边为目标表字段,例如:reader_column=writer_column。

        单击“查看编辑”,设置批量映射关系。

    2. 字段映射关系:支持批量转换,添加字段,行移动等功能。

      • 敏感信息检测:检测来源端数据是否包含敏感信息,存在敏感信息时无法进行数据迁移,需根据界面提示修改。
      • 批量转换器:批量转换源字段名。

        勾选需要转换的字段名,单击“批量转换器”,在弹出的转换器列表对话框中根据提示新建转换器。

        批量移除字段:源端配置使用SQL语句为是时不显示该参数,勾选需要移除的字段名,单击“批量移除字段”。

        已移除的字段可以在添加字段里的“添加被移除的字段”中看到。

      • 添加字段:源端配置使用SQL语句为是时不显示该参数。可以为源端和目的端添加新的字段。包含添加已被移除的字段和添加新字段。

        添加新字段支持以下类型:

        支持函数,例如mysql填写now()、curdate()、postgresql。

        支持填写now()、transaction_timestamp()。

        支持函数配合关键字,例如postgresql填写to_char(current_date,'yyyy-MM-dd')。

        支持填写固定值,例如:123、'123',这两种填法都代表字符串:123。

        支持填写变量值,例如:${workDate},workDate需要在作业变量中进行定义。

        JDBC支持填写固定变量,例如:DB_NAME_SRC(原始数据库名称)、TABLE_NAME_SRC(源端表名称)、DATASOURCE_NAME_SRC(源端数据源名称)。

        支持as语句,例如:'123' as test, now() as curTime。

      • 行移动:源端配置使用SQL语句为是时,在设置字段映射关系阶段不支持该功能。鼠标拖住需要移动的字段所在行,可以任意移动上下位置。
      • 查看转换器:(可选)CDM支持字段内容转换,如果需要可单击操作列下,进入转换器列表界面,再单击“新建转换器”。转换器使用详情请参见字段转换器配置指导
      • 查找目的端字段:CDM支持搜索查找目的端字段名并匹配字段,如果需要可单击操作列下,进入匹配目的字段对话框,通过搜索关键字或者直接单击目标进行匹配。
      • 删除字段:CDM支持删除原有表的默认字段,如果需要可单击操作列下删除字段,已移除的字段可以在添加字段里的“添加被移除的字段”中看到。
      • 字段映射样例:源端配置使用SQL语句为是时不显示该参数,查看源端和目的端样例数据。
      说明:
      • 文件类数据源(FTP/SFTP/HDFS/OBS)之间相互迁移数据,且源端“文件格式”配置为“二进制格式”(即不解析文件内容直接传输),没有字段映射这一步骤。

        整库迁移没有配置字段映射关系这一步骤。

      • 迁移过程中可能存在源端与目标端字段类型不匹配,产生脏数据,导致数据无法正常写入目标端,迁移过程中关于脏数据的容忍条数,请参考下一步任务属性进行配置。
      • 当源端某字段未与目标端字段进行映射时,源端该字段数据将不会同步到目标端。
      • 其他场景下,CDM会自动匹配源端和目的端数据表字段,需用户检查字段映射关系和时间格式是否正确,例如:源字段类型是否可以转换为目的字段类型。
      • 如果字段映射关系不正确,用户可以通过拖拽字段来调整映射关系(源端配置使用SQL语句为否时支持该功能)。
      • 如果在字段映射界面,CDM通过获取样值的方式无法获得所有列,则可以单击自定义新增字段,也可单击操作列下创建字段转换器,确保导入到目的端的数据完整。
      • 支持通过字段映射界面的,可自定义添加常量、变量及表达式。
      • 列名仅支持源端为OBS数据源,迁移CSV文件时配置“解析首行为列名”参数为“是”时显示。
      • SQLServer作为目的端数据源时,不支持timestamp类型字段的写入,需修改为其他时间类型字段写入(如datatime)。
      • 如果是导入到数据仓库服务(DWS),则还需在目的字段中选择分布列,建议按如下顺序选取分布列:
        1. 有主键可以使用主键作为分布列。
        2. 多个数据段联合做主键的场景,建议设置所有主键作为分布列。
        3. 在没有主键的场景下,如果没有选择分布列,DWS会默认第一列作为分布列,可能会有数据倾斜风险。

  6. 配置任务属性。

    通过任务配置,控制数据同步过程的相关属性,具体请参见表3

    表3 任务配置参数

    参数

    说明

    取值样例

    作业期望最大并发数

    设置当前作业从源端并行读取或并行写入目标端的最大线程数,由于分片策略等原因,实际运行过程中的并发线程数可能小于此值。

    其中,集群最大并发数的设置与CDM集群规格有关,并发数上限建议配置为vCPU核数*2。

    例如8核16GB规格集群的最大抽取并发数上限为16。

    3

    分片重试次数

    每个分片执行失败时的重试次数,为0表示不重试。

    说明:

    目前仅对目的端为Hudi、DWS,导入模式为UPSERT生效,其他场景及配置分片重试次数不生效。

    0

    是否写入脏数据

    选择是否记录脏数据,默认不记录脏数据,当脏数据过多时,会影响同步任务的整体同步速度。

    • 否:默认为否,不记录脏数据。

      表示不允许脏数据存在。如果同步过程中产生脏数据,任务将失败退出。

    • 是:允许脏数据,即任务产生脏数据时不影响任务执行。
      允许脏数据并设置其阈值时:
      • 若产生的脏数据在阈值范围内,同步任务将忽略脏数据(即不会写入目标端),并正常执行。
      • 若产生的脏数据超出阈值范围,同步任务将失败退出。
        说明:

        脏数据认定标准:脏数据是对业务没有意义,格式非法或者同步过程中出现问题的数据;单条数据写入目标数据源过程中发生了异常,则此条数据为脏数据。 因此只要是写入失败的数据均被归类于脏数据。

        例如,源端是VARCHAR类型的数据写到INT类型的目标列中,则会因为转换不合理导致脏数据不会成功写入目的端。用户可以在同步任务配置时,配置同步过程中是否写入脏数据,配置脏数据条数(单个分片的最大错误记录数)保证任务运行,即当脏数据超过指定条数时,任务失败退出。

    脏数据写入连接

    “是否写入脏数据”“是”才显示该参数。

    脏数据要写入的连接,目前只支持写入到OBS连接。

    obslink

    OBS桶

    “脏数据写入连接”为OBS类型的连接时,才显示该参数。

    写入脏数据的OBS桶的名称。

    dirtydata

    脏数据目录

    “是否写入脏数据”选择为“是”时,该参数才显示。

    OBS上存储脏数据的目录,只有在配置了脏数据目录的情况下才会记录脏数据。

    用户可以进入脏数据目录,查看作业执行过程中处理失败的数据或者被清洗过滤掉的数据,针对该数据可以查看源数据中哪些数据不符合转换、清洗规则。

    /user/dirtydir

    单个分片的最大错误记录数

    “是否写入脏数据”“是”才显示该参数。

    单个分区的错误记录超过设置的最大错误记录数则任务自动结束,已经导入的数据不支持回退。

    推荐使用临时表作为导入的目标表,待导入成功后再改名或合并到最终数据表。

    0

    开启限速

    是否开启同步限速。该速率代表CDM传输速率,而非网卡流量。

    • 限速:用户可以通过限速控制同步速率,可以保护读取端数据库,避免抽取速度过大,给源库造成太大的压力。限速最小配置为1MB/S。
    • 不限速:在不限速的情况下,任务将在所配置的并发数的限制基础上,提供现有硬件环境下最大的传输性能。
    说明:
    • 支持对MRS Hive\DLI\关系数据库\OBS\Apache HDFS作为目的端的作业进行单并发限速。
    • 如果作业配置多并发则实际限制速率需要乘以并发数。

    单并发速率上限(MB/s)

    开启限速情况下设置的单并发速率上限值,如果配置多并发则实际速率限制需要乘以并发数。单位:MB/s。

    说明:

    限制速率为大于1的整数。

    10

    单并发行数速率上限

    设置单并发行数速率上限,单位:record/s。

    100000

    中间队列缓存大小

    数据写入时中间队列缓存大小,取值范围为1-500。

    如果单行数据超过该值,可能会导致迁移失败。

    如果该值设置过大时,可能会影响集群正常运行。

    请酌情设置,无特殊场景请使用默认值。

    64

    实时检测作业敏感信息

    是否开启了实时检测作业敏感信息。

  7. 保存作业。

    作业配置完毕后,单击作业开发页面左上角“保存”按钮,保存作业的配置信息。

    作业如果开启了实时检测作业敏感信息,系统会自动检测来源端数据是否包含敏感信息,存在敏感信息时无法进行数据迁移,须根据界面提示修改。

    保存后,在右侧的版本里面,会自动生成一个保存版本,支持版本回滚。保存版本时,一分钟内多次保存只记录一次版本。对于中间数据比较重要时,可以通过“新增版本”按钮手动增加保存版本。

  8. 测试运行作业。
    作业配置完毕后,单击作业开发页面左上角“测试运行”按钮,测试作业。如果测试未通过,请您查看作业节点的运行日志,进行定位处理。
    说明:
    • 测试运行类似于单次运行,会对数据进行真实迁移。
    • 用户可以查看该作业的测试运行日志,单击“查看日志”可以进入查看日志界面查看日志的详细信息记录。
    • 作业未提交版本之前,进行手动测试运行,作业监控里面的作业运行实例版本显示是0。
  9. 提交作业版本。

    若任务需要进行周期性调度运行,您需要将任务发布至生产环境。关于任务发布,详情请参见:发布作业任务

  10. 调度作业。

    对已编排好的作业设置调度方式。关于调度作业,详情请参见:调度作业

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容