实时数据同步
实时数据同步
使用场景:用户对数据的时效性要求较高,需实时同步数据,进一步提升数据采集效率。
使用角色:数据开发人员。
功能描述:平台提供基于数据库日志的实时采集能力,可创建日志实时作业,启动后作业将持续运行。
配置分组
点击数据开发 > 实时数据 > 实时数据同步页面左侧目录栏中“新建”按钮进入新建分组弹窗,用户根据页面内容填写信息后点击右下角的“保存”按钮即可。
注意
- 支持同级分组拖拽移动排序;
- 可直接在新建分组时关联作业,一个作业只能同时关联一个分组,新建分组页面展示所有未关联分组的作业;
- 若作业未关联分组,则无法通过分组树过滤出对应作业,需在列表中自行搜索所需的未分组作业。
配置同步作业
新建
进入数据开发 > 实时数据 > 实时数据同步界面,点击“新建数据同步”按钮会出现新建数据同步弹窗,用户需根据页面内容填写相关信息。
- 填写项说明:
基本信息
- 作业名称:必填,用户根据实际业务场景手动输入作业名称,支持中英文,空间内不允许重复;
- 所属分组:非必填,下拉配置作业所属分组,未分组作业统一放在分组下方展示,可后续添加分组;
- 作业运行人:必填,默认当前创建人,新建时不可修改,后续只可由空间管理员修改;作业运行时会以作业运行人的数据库账号进行校验并执行作业任务,若开启相关权限管控,存在作业运行人无权限数据表、数据源时,则作业异常终止;
- 同步策略:
- 若所选来源表中有主键,则此同步策略配置无效,会按主键自动进行增量更新;
- 若所选来源表无主键,修改数据操作将按配置的同步策略执行,如选择忽略则不同步修改数据,选择新增则追加新增方式同步修改数据;所有删除数据操作均会按忽略处理。
- 重试次数:当作业异常终止时可自动重试。必填,默认为5,次数阈值为5-30;重试间隔默认为5分钟,不可配置。
- 描述:非必填,填写该作业的描述信息。
数据来源:
- 来源库:下拉选择数据源类型后,根据名称目标数据源,仅可选择 MySQL、Oracle 类型数据源;注意
若开启资源权限管控,则来源库将过滤不显示当前用户无权限数据源,即不允许同步无权限数据源
- 来源表:多选,最多100张,多次选择增量更新已选表;
- 删除:勾选来源表后点击“删除”或“批量删除已选表”可删除选中的来源表。
数据去向:
- 目标表:下拉选择目标数据表,可依据数据表中英文名检索目标数据表,支持模糊检索,允许选择相同的目标表;注意
- 若开启业务权限管控,则目标表将过滤不显示当前用户无读写权限数据表,即不允许同步数据至无权限表
- 目标表不可选择其他空间授权的跨空间数据表,即不可对其他空间表进行读写
- 映射状态:选择目标表后,自动进行同名映射,并显示映射状态;
- 全部映射:所有字段匹配并连线;
- 部分映射:部分字段匹配并连线;
- 未映射:无字段匹配;
- 查看映射:默认自动进行同名映射,点击查看映射可进行手动修改;
- 创建目标表:点击新建目标表,会自动带入来源表相关信息,以快速配置结构相同的目标表,详细配置参见"单独建表";
- 批量创建目标表:勾选左侧来源表后,可点击批量创建目标表,以多个页签进行创建,每个页签逻辑同上。
注意
- 数据源选择中 MySQL 数据源支持 Database:5.7,8.0.x 版本;Driver:8.0.28 版本;
- 数据源选择中 Oracle 数据源支持 Database:12c,19c,21c 版本;Driver:12.2.0.1,19.8.0.0,21.1.0.0 版本;
- 对于实时同步作业,系统将自动为目标表添加隐藏字段,用以标识不同来源表的数据,当作业启动运行时,可对未完成同步的来源表进行指向性清空对应数据再全量同步,以确保对应表数据不缺失,且不影响已完成同步的来源表数据;该隐藏字段界面不可见,不影响其他功能使用,请勿在数据库对该字段进行变更。
修改
进入数据开发 > 实时数据 > 实时数据同步界面,选择目标作业后点击列表操作栏“修改”按钮,可修改作业基本信息,并支持新增、修改、删除来源目标组(即一对来源表和目标组合)。
注意
- “运行中”状态作业无法修改,需暂停或停止作业;
- 所有状态修改时均不可修改数据源;
- 已暂停、异常终止状态,修改页面中“同步策略”不可修改,作业名称、分组、描述可修改;数据源不可切换,“新增来源表、删除”按钮不可点,修改抽屉中来源目标表不可变更,仅可修改字段映射。
删除
进入数据开发 > 实时数据 > 实时数据同步界面,选择目标作业后点击列表操作栏“删除”按钮,二次确认后即可。
注意
- “运行中”状态作业无法删除,需暂停或停止作业;
- 删除作业仅删除作业本身,不会删除来源表、目标表及表中的数据。
作业信息
运行状态
- 平台支持通过操作栏的“运行”、“暂停”、“停止”来控制作业状态,具体如下表:
状态 | 触发条件 | 修改 | 删除 | 运行 | 暂停 | 停止 | 运行详情 |
---|---|---|---|---|---|---|---|
未开始 | 作业创建完成即进入该状态 | √ | √ | √ | X | X | X |
运行中 | 在作业未开始/已暂停/已停止/异常终止状态点击“运行” | X | X | X | √ | √ | √ |
已暂停 | 在运行状态下点击“暂停” | √ | √ | √ | X | √ | √ |
已停止 | 在运行/暂停状态下点击“停止” | √ | √ | √ | X | X | √ |
异常终止 | 作业在运行中,因为来源异常、目标表异常、数据不符合表结构、网络、服务等原因导致运行停止 | √ | √ | √ | X | √ | √ |
运行逻辑
状态 | 运行逻辑 |
---|---|
未开始 | 点击运行后,第一阶段仍采用全量同步存量数据,后续再持续增量同步 |
运行中 | 持续监控源端数据源日志,按“同步策略”同步数据 |
已暂停 | 点击运行后,从暂停处继续同步数据 |
已停止 | 点击运行后,清空目标表所有数据,从头开始同步数据 |
异常终止 | 点击运行后,从异常终止处继续同步数据 |
运行详情
- 作业运行后即可查看运行详情,详情中可查看每个来源表和对应目标表的当前数据量,以了解数据同步进度。
注意
- 表数据量:当表的数据量显示“-”,表示存在连接异常等状况,无法获取数据数量;
- 目标表数据量:若多个来源表对应同一目标表,则目标表数据量中所有关联来源表数据总量为所有来源表自动求和的值;
- 同步编号:作业在同步引擎中的唯一标识,属于技术信息,暂时不会在平台其他地方使用;技术人员在通过运行日志排查问题时,复制编号进行检索可快速定位到当前作业的相关内容;
- 运行日志:暂仅支持日志的下载查看。