数据迁移

更新时间:
复制 MD 格式

本文介绍如何使用数据迁移功能,将外部数据源的数据全量迁移至云数据库 SelectDB 版。

功能简介

数据迁移功能支持将以下数据源的全量数据迁移至云数据库 SelectDB 版:

  • Apache Doris

  • SelectDB

  • StarRocks

前提条件

  • 已准备好源集群的连接信息,包括地址、端口、用户名和密码。

  • 已准备好用于数据中转的临时对象存储,并获取其访问地址和授权信息。迁移任务将使用该对象存储临时存放数据,任务完成后将自动清理。

操作步骤

导航至数据迁移页面

  1. 登录云数据库 SelectDB 控制台

  2. 在页面左上角,选择实例所在地域。

  3. 实例列表页面,单击目标实例ID,进入到实例详情页面。

  4. 单击页面左侧菜单中的数据开发与管理(Studio) 下的数据迁移

    说明

    首次使用数据开发与管理,系统会提示将您本地公网IP添加到实例白名单分组webui_whitelist中,请仔细阅读,单击确定。

创建迁移任务

数据迁移页面,单击创建迁移任务,并按照向导分步完成配置。

  1. 配置源集群与任务基本信息

    在左侧导航栏进入迁移模块,单击创建迁移任务。根据界面提示,配置以下信息,然后单击下一步以验证连通性。

    • 任务名称备注:自定义任务的名称和描述。

    • 源集群连接信息:填写源集群的地址、JDBC 端口、HTTP 端口、用户名和密码。

  2. 配置临时对象存储

    选择对象存储云服务商后,填写相应的对象存储地址授权信息

  3. 选择迁移对象

    勾选要迁移的数据库和表。您可以通过批量选择或使用搜索框来筛选对象。此外,您还可以通过数据过滤功能为特定表设置过滤条件,仅迁移满足条件的数据。迁移任务会根据源端表的结构定义自动在目标云数据库 SelectDB 版中创建对应表,无需预先手动建表。如果您通过 JDBC(MySQL 协议)连接云数据库 SelectDB 版执行 INSERT 写入数据,当目标表不存在时会返回 Table does not exist 错误,需先执行 CREATE TABLE 创建表结构后才能写入数据。

  4. 高级设置

    在此步骤中,配置迁移任务的性能参数:

    • 集群:选择执行迁移任务所使用的计算资源。

    • 表级并发:设置同时迁移的表的数量。

    • 表内并发:设置单个表内的数据分片(Tablet)的迁移并发数。

  5. 预检查与启动

    系统将对配置进行预检查。检查通过后,即可启动迁移任务。

数据一致性说明

迁移后表结构和数据的一致性取决于字段类型:

  • 普通字段(如 INT、VARCHAR、DECIMAL 等)的表结构和数据可保持一致。

  • BITMAP 和 HLL 聚合类型字段不支持直接迁移,需在目标端重新建表并通过配套函数重新导入:

    • BITMAP 字段:建表时指定 BITMAP_UNION 聚合类型,使用 bitmap_hash() 函数导入数据。

    • HLL 字段:建表时指定 HLL_UNION 聚合类型,使用 hll_hash() 函数导入数据。

迁移完成后,建议对比源端和目标端的表结构(列名、类型、约束)和数据完整性(行数、数据内容),确保迁移结果符合预期。

查看与管理迁移任务

迁移任务启动后,页面将自动跳转至数据迁移列表。您可以在此查看和管理所有迁移任务。

  • 查看任务列表:在数据迁移页面,您可以查看所有任务的迁移任务名称数据源状态创建时间等基本信息。

  • 查看任务详情:单击目标任务操作列对应的按钮查看详细信息,可以进入任务详情页面,了解该任务的迁移进度、表级别详情以及配置信息。