本文档旨在介绍如何通过提交数据清理工单实现清理数据。
背景信息
ODC 支持在源数据库中的数据归档到目标数据库后,删除源数据库中的数据,以提高数据库查询性能,降低在线存储成本。
本文档以新建数据清理为例,介绍如何在 ODC 中清理数据库 test2 中的表 employee。
文中所使用的均为示例数据,您可根据实际情况对数据进行替换。
注意事项
前置条件:
清理数据源支持:
OceanBase MySQL 数据源。
OceanBase Oracle 数据源。
以下情况不支持清理:
OceanBase MySQL 数据源若表中包含 XMLTYPE 字段类型,不支持清理。
OceanBase Oracle 数据源若表中不包含主键 PRIMARY KEY,不支持清理。
OceanBase Oracle 数据源若表中包含 JSON、XMLTYPE 字段类型,不支持清理。
若清理条件中包含 limit 语句,不支持进行清理。
若表中包含外键,不支持清理。
新建数据清理
在 SQL 开发窗口左侧导航栏的 工单 页签中,单击 数据清理 > 新建数据清理。
在 新建数据清理 页面中,输入以下信息。
信息项
说明
清理前是否需要校验
勾选校验选项,清理前会检查待清理的表数据是否与目标表数据一致,如果数据一致则继续清理,否则不清理。
源端数据库
选择表所属的数据库。
目标数据库
选择校验的表所属数据库。
清理范围
部分清理:通过清理条件清理数据库中部分表。
可使用常量或者引用变量配置中定义的变量来配置过滤条件。例如:
time<'${create_time}'
,其中create_time
为变量配置中的变量名,time
为清理表中的字段。勾选指定分区,支持根据指定的分区清理数据。
整库清理:清理数据库中所有表。
自定义变量
可选项。通过定义变量和设置时间偏移量筛选表中符合条件的行进行清理。
执行方式
选择 立即执行/定时执行/周期执行 设置任务执行方式。
任务设置
配置限流策略。
指定任务时长:任务启动指定时长后,若未完成则会暂停调度,等待下一次调度。
搜索策略:支持全表扫描和条件匹配。
行限流:每秒操作数据总行限制。
数据大小限流:每秒操作数据总大小限制。
使用主键清理:选择是否使用主键清理数据。
描述
可在 描述 文本框中输入不超过 200 个字符的描述信息,该项为选填项。
单击 新建 后,预览清理 SQL 语句并单击 确定,完成新建数据清理。
任务生成后可以在 工单 > 数据清理 列表中查看任务信息。
查看数据清理任务
任务信息
如上图所示,在 工单 的数据清理列表中,单击操作列中的 查看 按钮。
在弹出的任务详情面板中,单击 任务信息 页签查看任务类型、源数据库、目标数据库、变量配置、清理范围和执行方式等信息。
执行记录
在任务详情面板中,单击 执行记录 页签查看任务状态和执行详情等操作。
操作记录
在任务详情面板中,单击 操作记录 页签查看任务的任务审批状态和变更记录。
导入数据清理任务
您可以将云数据库 OceanBase 中的实例迁移到 OB Cloud,并将已迁移实例中包含的数据清理任务迁移到 OB Cloud。
步骤一:从云数据库 OceanBase 导出数据清理任务
在 云数据库 OceanBase 管理控制台 的左侧导航栏中,单击 实例列表。
单击实例 操作 项下的 切至云市场。
实例切换完成后,单击实例 操作 项下的 处理数据研发任务。
在 处理数据研发任务 页面,单击 查看并导出全部,导出定时任务到本地。
步骤二:导入数据清理任务到 OB Cloud
登录 OB Cloud 云数据库控制台,单击 数据服务 > 生命周期 后,在 生命周期 页面中单击 ... 更多选项 > 导入作业。
将下载到本地的数据清理配置文件上传到导入作业。