离线同步能力说明

更新时间: 2025-08-29 17:50:24

数据集成的离线同步功能为您提供数据读取(Reader)和写入插件(Writer),方便您通过定义来源与去向数据源,并结合DataWorks调度参数使用,将源端数据库中全量或增量数据的同步至目标数据库中。本文为您介绍离线同步的相关能力。

核心能力

离线同步支持的能力如下图所示:

离线同步能力

能力

描述

异构数据源间的数据同步

数据集成目前支持50+数据源类型,包括关系型数据库、非结构化存储、大数据存储、消息队列间的数据同步。您可以通过定义来源与去向数据源,并通过数据集成提供的数据抽取插件(Reader)、数据写入插件(Writer),实现任意结构化、半结构化数据源之间数据传输。详情请参见:支持的数据源及同步方案

复杂网络环境下的数据同步

离线同步支持阿里云云数据库,本地IDC、ECS自建数据库或非阿里云数据库等环境下的数据同步。配置前需确保资源组与源端/目的端的网络连通性,配置详情请参见:网络连通方案

同步场景

1. 支持的同步模式

  • 周期性全量:将源表数据完整地、周期性地覆盖写入到目标表。适用于全量更新的场景。

  • 周期性增量:每天/每小时只同步源表中新增或发生变化的数据。通过内置的调度参数(如${bizdate})配合数据过滤WHERE条件来实现,确保每次只拉取指定的数据写入对应的时间分区。详情参见:场景:配置增量数据离线同步任务

  • 历史数据回填:当需要一次性补录大量历史数据时,可利用运维中心的补数据功能,批量执行同步任务,高效完成历史数据的归档。

2. 支持的源端结构

  • 单表到单表:最基础的同步方式,将一张源表的数据同步至一张目标表。

  • 分库分表到单表

    • 自动聚合来自多个物理表(如订单库 order_01order_02...)的数据,并统一写入到一张目标表中。

    • 支持的数据源包括:MySQL、SQL Server、Oracle、PostgreSQL、PolarDB和AnalyticDB等。详情请参见:配置分库分表离线同步任务

配置方式

您可以通过以下方式配置数据集成离线同步任务。

  • 向导模式:通过可视化引导界面逐步完成配置,适合快速上手。该模式操作简单学习成本低,但部分高级功能不可用。

  • 脚本模式:采用JSON脚本直接定义同步逻辑,适合进阶使用。该模式支持更复杂的配置场景,可实现精细化控制。

  • OpenAPI创建:通过OpenAPI接口实现任务全生命周期管理,支持程序化操作。接口说明请参见:。

说明

任务配置相关能力说明请参见:功能概述

离线同步任务运维

  • 监控报警:支持对离线同步任务的运行状态进行监控,包括任务未完成、出错、完成等场景的监控报警,并且支持通过邮件、短信、电话、钉钉群机器人和WebHook等多种报警方式将报警信息发送给报警接收人。

  • 数据质量:任务提交发布后,可以在运维中心对目标表配置数据质量监控规则。目前仅部分数据库类型支持配置数据质量监控规则。

  • 数据源环境隔离同一数据源名称绑定开发与生产两套独立配置,任务执行时自动按环境切换数据源——开发调试用开发环境,生产调度用生产环境,防止测试误操作线上数据的风险。

功能概述

任务配置

功能

说明

全量或增量数据同步

离线同步任务可以通过配置数据过滤并结合调度参数,实现数据的全量或增量同步。不同插件增量同步配置方式不同,关于增量数据同步配置详情请参见:场景:配置增量数据离线同步任务

字段映射

通过建立字段间映射规则,源端数据将按指定关系写入目标端对应字段。配置时需确保两端字段类型兼容。

  • 提供多种字段映射方式:

    • 向导模式支持同名映射、同行映射,并支持自定义字段关系。未映射字段数据自动忽略,需确保目标端对应字段配置默认值或允许空值,避免写入失败。

    • 脚本模式依据column配置顺序严格映射,要求读取端与写入端字段数量严格一致,否则任务触发执行异常。

  • 同步任务同时提供目标字段动态赋值功能,支持常量、调度参数及内置变量(如${bizdate})的灵活配置,相关参数需在调度环节完成最终赋值。

作业速率上限控制

  • 提供任务并发数控制功能来限制数据集成读取和写入数据库的最大并发数。

  • 提供同步速率功能控制流量,避免同步速度过快对数据来源端或者数据去向端造成太大的压力。不限流的情况下则会提供现有硬件环境下最大的传输性能。

分布式执行任务

支持分布式执行的数据源可通过任务切片技术,将同步任务分发至多节点并发执行,实现同步速度随集群规模线性提升,突破单机性能瓶颈。该模式尤其适用于高吞吐、低延迟的同步场景,同时能高效调度集群闲置资源,显著提升硬件利用率。

脏数据策略

脏数据指数据写入目标端时因异常(如类型冲突、约束违反)导致失败的数据记录。离线同步支持定义脏数据策略,可定义脏数据容忍条数及对任务的影响。

  • 忽略脏数据:自动过滤脏数据,仅写入合规数据,任务持续运行。

  • 容忍有限脏数据:设置阈值N(脏数据 ≤ N → 丢弃异常数据,任务继续;脏数据 > N → 任务失败退出)

  • 不容忍脏数据:任务出现脏数据时立即失败退出。

时区

若源端和目的端需进行跨时区同步,可以通过设置源端时区来进行时区转换。

后续步骤

创建任务详细说明参见:

通过向导模式配置离线同步任务

通过脚本模式配置离线同步任务

配置分库分表离线同步任务

上一篇: 任务配置方式 下一篇: 通过向导模式配置离线同步任务
阿里云首页 大数据开发治理平台 DataWorks 相关技术圈