跳到主要内容

定时扫描同步任务

简介

RETL(定时扫描同步)是一种 按固定周期拉取数据 并写入目标端的同步方式,适合:

  • 没有 CDC 日志能力的数据源
  • 需要“每 N 秒/分钟”刷新数据的场景
  • 可接受轻微时延的准实时同步

支持的链路

源端 -> 目标端同步模式执行前动作(可选)增量字段1类型
StarRocks -> MySQL定时扫描清空对端2、历史表归档3日期时间
Doris -> MySQL定时扫描清空对端、历史表归档日期时间、高精度日期时间
Redshift -> MySQL定时扫描清空对端时间戳
Elastisearch -> Elasticsearch定时扫描清空对端日期、纳秒日期、ES 时间戳
OssFile -> PostgreSQL定时扫描清空对端4/
SshFile -> PostgreSQL定时扫描清空对端/
S3File -> PostgreSQL定时扫描清空对端/
Yuque -> PostgreSQL定时扫描清空对端/
信息
  1. 增量字段必须为时间类型。配置该字段后,系统每次扫描只会拉取时间在“上次扫描之后”的新增或更新数据,实现增量同步效果(注意:暂不支持同步源端的删除操作)。
  2. 清空对端:执行当前轮次前,执行 清空对端表 的动作,适用于整张表定时迁移(如报表结果)。
  3. 历史表归档:执行当前轮次前,执行 rename table A to A_arc_时间戳create table A like A_arc_时间戳。适用于整张表定时迁移(如报表结果)。
  4. 源端为文件类的操作,清空对端 仅会删除对应文件的数据 ,而非清空整个表记录。

操作步骤

选择数据源

  1. 选择源端和目标端数据源,点击 测试连接
  2. 选择需要同步的 schema 信息。

配置任务

  1. 在功能配置页面,任务类型 选择 增量同步
  2. 同步模式 选择 定时扫描,并 设置参数
    • 执行周期:即每次扫描的间隔,单位秒 (默认 300 秒)
    • 执行前动作:即开始扫描之前可以执行的动作。

选择数据表

  1. 在表 & action 过滤页面,选择要迁移的表。
  2. 在表格右上方点击 打开操作黑名单,可过滤各类 DML/DDL 操作。

处理数据

  1. 在数据处理页面的左侧选择表,并勾选要迁移的列。
  2. 按需设置 增量字段(不设置则每次进行全量扫描):
    • 单独设置:在左侧点击 操作 > 增量字段,为这张表设置增量字段。
    • 批量操作:在右上角点击 批量操作 > 增量字段,为多张表统一设置增量字段。

创建确认

  1. 在创建确认页面,确认任务信息。
  2. 确认无误后,点击 创建任务

参数设置建议

  • 执行周期:建议先调大(如 300 秒),稳定后再调小。
  • 执行前动作
    • 如果需要实现增量同步(即数据处理页选择增量字段),则选择
    • 如果表较小,并且需要复制源端的删除操作,则数据处理页不选择增量字段,且此处选择 清空对端
  • 增量字段:优先选 可排序、稳定递增或可比较 的时间字段。

常见问题

Q:为什么我看不到“增量字段”可选?

当前链路未开放该能力,或当前对象字段类型不在支持范围内。

Q:不配置增量字段可以吗?

可以(若该链路实现支持)。通常会按周期做全量扫描/复制。

Q:如何判断任务是否按 RETL 运行?

在任务列表和任务详情页会显示“定时扫描”图标(钟表状)。

联系我们
微信二维码

扫码添加微信,获取技术支持