文档

数据清理

更新时间:

本文档旨在介绍如何通过提交数据清理工单实现归档数据。

背景信息

ODC 支持在源数据库中的数据归档到目标数据库后,删除源数据库中的数据,以提高数据库查询性能,降低在线存储成本。

本文档以新建数据清理为例,介绍如何在 ODC 中清理数据库 test2 中的表 employee。

说明

文中所使用的均为示例数据,您可根据实际情况对数据进行替换。

前提条件

  • 清理的表中必须包含主键。

注意事项

  • 前置条件:

    • OceanBase 数据源必须通过 OBproxy 连接(暂不支持对直连的 OceanBase 进行清理操作)。

    • OceanBase 数据源目前仅支持集群实例,新建数据源时必须配置集群名称。

    • 二级分区不支持表结构同步,异构数据库不支持结构同步以及自动建表。

  • 清理数据源支持:

    • OceanBase MySQL 数据源。

    • OceanBase Oracle 数据源。

  • 以下情况不支持清理:

    • OceanBase MySQL 数据源若表中不包含主键 PRIMARY KEY 或唯一非空索引,不支持进行清理。

    • OceanBase Oracle 数据源若表中不包含主键 PRIMARY KEY,不支持进行清理。

    • OceanBase Oracle 数据源若表中包含 JSON、XMLTYPE 字段类型,不支持进行清理。

    • OceanBase Oracle 数据源不支持 V4.3.0 及以上版本。

    • OceanBase MySQL 数据源不支持 V4.3.1 及以上版本。

    • 若清理条件中包含 limit 语句,不支持进行清理。

    • 若表中包含外键,不支持进行清理。

新建数据归档

  1. 在 SQL 开发窗口左侧导航栏的 工单 页签中,单击 数据清理 > 新建数据清理

    image.png

  2. 新建数据清理 页面中,输入以下信息。

    image.png

    信息项

    说明

    清理前是否需要校验

    勾选校验选项,清理前会检查待清理的表数据是否与目标表数据一致,如果数据一致则继续清理,否则不清理。

    源端数据库

    选择表所属的数据库。

    目标数据库

    选择校验的表所属数据库。

    清理范围

    • 部分清理:通过清理条件清理数据库中部分表。

      • 可使用常量或者引用变量配置中定义的变量来配置过滤条件。例如:time<'${create_time}',其中create_time为变量配置中的变量名,time为清理表中的字段。

      • 勾选指定分区,支持根据指定的分区清理数据。

    • 整库清理:清理数据库中所有表。

    自定义变量

    可选项。通过定义变量和设置时间偏移量筛选表中符合条件的行进行清理。

    执行方式

    选择 立即执行/定时执行/周期执行 设置任务执行方式。

    任务设置

    配置限流策略。

    • 指定任务时长:任务启动指定时长后,若未完成则会暂停调度,等待下一次调度。

    • 行限流:每秒操作数据总行限制。

    • 数据大小限流:每秒操作数据总大小限制。

    • 使用主键清理:选择是否使用主键清理数据。

    备注

    可在 备注 文本框中输入不超过 200 个字符的描述信息,该项为选填项。

  3. 单击 新建 后,预览清理 SQL 语句并单击 确定,完成新建数据清理。

    image

  4. 任务生成后可以在 工单 > 数据清理 列表中查看任务信息。

    image.png

查看数据清理任务

任务信息

  1. 如上图所示,在 工单 的数据清理列表中,单击操作列中的 查看 按钮。

  2. 在弹出的任务详情面板中,单击 任务信息 页签查看任务类型、源数据库、目标数据库、变量配置、清理范围和执行方式等信息。

    image

执行记录

在任务详情面板中,单击 执行记录 页签查看任务状态和执行详情等操作。

操作记录

在任务详情面板中,单击 操作记录 页签查看任务的任务审批状态和记录。

image

相关文档