跳到主要内容
版本:26.x

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

导入

导入 用于将外部数据写入 SelectDB Cloud,支持查看导入任务和使用可视化向导配置数据加载。不同数据源的连接、读取方式和任务参数不同,不能使用同一套参数描述所有导入方式。

登录 SelectDB Cloud 控制台,选择目标仓库,单击左侧导航栏的 导入。首次进入时直接选择数据源;已有任务时,单击 新建导入任务。

支持的数据源​

类型数据源与说明
事件流Apache Kafka,通过 Routine Load 持续消费数据。
样例数据ClickBench、TPC-H、GitHub Demo、SSB-FLAT,用于演示和测试。
数据库MySQL、PostgreSQL 等入口仅在对应能力启用时展示,使用各自的数据库同步向导。
对象存储OSS 对象存储入口仅在对应能力启用时展示,按文件路径和格式配置加载。

页面没有某个数据源入口时,不代表能通过其他向导代替配置。可使用对应的 SQL 导入方式或外部集成工具;只需就地查询外部数据库时,可以使用外部目录。

创建导入任务​

以下以当前通用入口中的 Apache Kafka 为例。开始前,确认仓库具有可用计算集群,数据库用户具有目标对象的相应权限,且仓库可以访问 Kafka Brokers。

1. 选择数据源​

在导入入口选择 Apache Kafka,进入 新建导入任务 - Apache Kafka。向导包含 连接、源数据、目标表、任务配置 和 校验 五个步骤。

2. 配置数据源连接​

在 连接 中填写以下信息,单击 下一步 校验:

配置项说明
任务名称、备注使用便于识别的名称,按需填写备注。
消费者组核对自动生成或自定义的消费者组,避免与其他业务的消费配置混用。
Brokers填写可访问的 Broker 地址与端口,多个地址用逗号分隔。
认证方式按 Kafka 配置选择 SASL 或 PLAINTEXT;SASL 需要配置用户名、密码及 SASL 机制。
启用 SSL、CA 证书根据源端加密要求配置,保证证书与连接地址匹配。
反向私有端点访问私网 Kafka 且环境支持时,配置对应连接。

客户端能访问 Broker 不代表仓库也能访问。应核对仓库侧路由、访问控制,以及 Kafka 返回的 Broker 地址。私网配置参见网络设置。

3. 配置源数据​

  1. 在 源数据 中选择 Topic。
  2. 配置 偏移量,选择 From Beginning(从起始位置)、From End(从末尾)或从指定时间戳开始消费。选择末尾会跳过已有消息;重新创建任务时应重新核对消费起点。
  3. 选择 数据格式,根据格式配置分隔符等解析参数。
  4. 核对预览数据及字段解析后,单击 下一步。

4. 配置目标表​

在 目标表 中选择目标数据库和表。根据页面提供的选项使用已有表或配置新表,核对字段名称、类型、映射及高级设置。

自动推断的字段不保证覆盖全部消息,应检查空值、日期格式、数值范围和嵌套结构。创建表需要建表权限,写入已有表需要对应写入权限。

5. 配置任务参数​

在 任务配置 中设置并发数、最大批处理间隔、单批最大行数和单批最大大小等参数。

  • 最大批处理间隔(秒) 表示批次组织参数,不应理解为所有数据源统一的“同步间隔”。
  • 并发、批次大小影响吞吐、延迟和资源占用,需要结合 Kafka 分区、目标集群容量及业务负载设置。
  • 如果页面提供严格模式等选项,应结合字段类型转换要求配置,并关注错误和过滤行数。

6. 校验并启动​

  1. 在 校验 中查看连接、源数据和目标配置的检查结果。
  2. 修复失败项并重新校验。
  3. 确认 Topic、消费起点、目标表及参数后,单击 开始。
  4. 返回导入列表,核对状态、任务详情及目标表中的实际数据。

启动任务会实际消费消息并写入仓库。重复创建任务或重新设置消费位点可能重复读取数据,应结合目标表模型设计去重或覆盖策略。

数据库和对象存储导入​

如果当前环境提供数据库导入入口,按专用向导配置主机、端口、数据库及认证信息,再选择同步对象和同步类型。使用增量同步时,MySQL 需要相应 binlog 配置,PostgreSQL 需要相应 WAL、复制及权限配置;不要将 Kafka 偏移量或批次参数直接用于 CDC 同步。

对象存储导入需核对 Bucket、路径、文件匹配范围、格式和认证方式。Endpoint 与地域必须对应实际存储,授权应覆盖所选文件。使用 SQL 加载文件时,按对应导入方式配置;通过客户端上传数据可以参见 Stream Load。

样例数据​

  1. 在 导入 页选择 ClickBench、TPC-H、GitHub Demo 或 SSB-FLAT。
  2. 按页面选择目标数据库、计算集群及样例规模等配置。
  3. 核对将创建的对象和数据量,单击 确认,完成后使用 SQL 编辑器查询验证。

样例导入同样会消耗计算和存储资源。避免使用与现有业务对象冲突的名称,测试完成后按需清理。

管理和监控​

在导入任务列表中核对任务类型、状态、创建时间和运行信息。打开任务详情,结合进度、错误原因及可用的吞吐指标判断运行情况。

不同导入方式提供的管理操作不同。持续导入任务可以在状态允许时暂停或恢复;一次性导入任务不一定支持相同操作。编辑、重试或删除前,应核对消费进度及已写入的数据,删除任务不等同于撤销已导入数据。

跨云账号授权​

对象存储支持角色或委托认证的场景下,可以授权 SelectDB Cloud 访问指定 Bucket。仅在任务表单提供相应认证方式时使用以下配置;当前 Kafka 向导不使用对象存储角色。

先从任务的认证说明中获取可信账号、外部 ID 和需要回填的角色信息,避免沿用其他环境的账号标识。纯读取任务按需授予读取和列举权限;迁移中转还可能需要写入与清理权限。授权范围应限制到任务使用的 Bucket 和对象路径。

阿里云​

  1. 在阿里云 RAM 访问控制 > 角色 中单击 创建角色。
  2. 选择可信实体类型 阿里云账号,单击 下一步。
  3. 填写角色名称,选择 其他云账号,填写当前任务认证说明提供的 SelectDB 阿里云账号,完成角色创建。
  4. 单击 为角色授权,为任务涉及的 OSS Bucket 和对象路径授予所需权限。纯导入不应默认授予整个对象存储服务的读写权限。
  5. 进入角色详情,复制 RAM 角色名称 和 ARN,回填到任务表单要求的字段。
  6. 执行连接校验,确认可以读取目标文件。

腾讯云​

  1. 在腾讯云 访问管理 > 角色 中单击 新建角色,选择角色载体 腾讯云账户。
  2. 在云账号类型中选择 其他主账号,填写当前任务认证说明提供的 SelectDB 腾讯云账号 ID。
  3. 按页面要求开启外部 ID 校验,填写当前任务提供的外部 ID,单击 下一步。
  4. 配置 COS 权限,将范围限制为任务使用的 Bucket 和路径;根据实际操作授予读取、列举或必要的写入权限。
  5. 按需添加标签,填写角色名称并完成创建。
  6. 进入角色详情,复制 角色名称 和 RoleArn,回填任务表单并验证访问。

华为云​

  1. 在华为云 统一身份认证服务 中创建委托。

  2. 填写委托名称,选择普通账号委托,填写当前任务认证说明提供的受托账号。已有配置使用过 selectdbcloud,新任务应核对当前页面提供的值。

  3. 为任务涉及的 OBS Bucket 和对象路径配置权限。可使用自定义策略授予所需操作;OBS OperateAccess 涵盖读写和删除,不应作为纯读取任务的默认授权。

  4. 以下为原有读写场景的操作集合示例。用于纯读取时移除不需要的写入操作,并在云侧策略中进一步限制资源范围。

    {
    "Version": "1.1",
    "Statement": [
    {
    "Effect": "Allow",
    "Action": [
    "obs:object:GetObject",
    "obs:bucket:GetBucketLocation",
    "obs:bucket:HeadBucket",
    "obs:bucket:ListAllMyBuckets",
    "obs:bucket:ListBucket",
    "obs:object:GetObjectVersion",
    "obs:object:PutObject"
    ]
    }
    ]
    }
  5. 选择授权范围,确认创建委托。

  6. 将 委托名称 和你的 云账号名称 回填到任务要求的字段,并验证访问。