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. 配置源数据
- 在 源数据 中选择 Topic。
- 配置 偏移量,选择 From Beginning(从起始位置)、From End(从末尾)或从指定时间戳开始消费。选择末尾会跳过已有消息;重新创建任务时应重新核对消费起点。
- 选择 数据格式,根据格式配置分隔符等解析参数。
- 核对预览数据及字段解析后,单击 下一步。
4. 配置目标表
在 目标表 中选择目标数据库和表。根据页面提供的选项使用已有表或配置新表,核对字段名称、类型、映射及高级设置。
自动推断的字段不保证覆盖全部消息,应检查空值、日期格式、数值范围和嵌套结构。创建表需要建表权限,写入已有表需要对应写入权限。
5. 配置任务参数
在 任务配置 中设置并发数、最大批处理间隔、单批最大行数和单批最大大小等参数。
- 最大批处理间隔(秒) 表示批次组织参数,不应理解为所有数据源统一的“同步间隔”。
- 并发、批次大小影响吞吐、延迟和资源占用,需要结合 Kafka 分区、目标集群容量及业务负载设置。
- 如果页面提供严格模式等选项,应结合字段类型转换要求配置,并关注错误和过滤行数。
6. 校验并启动
- 在 校验 中查看连接、源数据和目标配置的检查结果。
- 修复失败项并重新校验。
- 确认 Topic、消费起点、目标表及参数后,单击 开始。
- 返回导入列表,核对状态、任务详情及目标表中的实际数据。
启动任务会实际消费消息并写入仓库。重复创建任务或重新设置消费位点可能重复读取数据,应结合目标表模型设计去重或覆盖策略。
数据库和对象存储导入
如果当前环境提供数据库导入入口,按专用向导配置主机、端口、数据库及认证信息,再选择同步对象和同步类型。使用增量同步时,MySQL 需要相应 binlog 配置,PostgreSQL 需要相应 WAL、复制及权限配置;不要将 Kafka 偏移量或批次参数直接用于 CDC 同步。
对象存储导入需核对 Bucket、路径、文件匹配范围、格式和认证方式。Endpoint 与地域必须对应实际存储,授权应覆盖所选文件。使用 SQL 加载文件时,按对应导入方式配置;通过客户端上传数据可以参见 Stream Load。
样例数据
- 在 导入 页选择 ClickBench、TPC-H、GitHub Demo 或 SSB-FLAT。
- 按页面选择目标数据库、计算集群及样例规模等配置。
- 核对将创建的对象和数据量,单击 确认,完成后使用 SQL 编辑器查询验证。
样例导入同样会消耗计算和存储资源。避免使用与现有业务对象冲突的名称,测试完成后按需清理。
管理和监控
在导入任务列表中核对任务类型、状态、创建时间和运行信息。打开任务详情,结合进度、错误原因及可用的吞吐指标判断运行情况。
不同导入方式提供的管理操作不同。持续导入任务可以在状态允许时暂停或恢复;一次性导入任务不一定支持相同操作。编辑、重试或删除前,应核对消费进度及已写入的数据,删除任务不等同于撤销已导入数据。
跨云账号授权
对象存储支持角色或委托认证的场景下,可以授权 SelectDB Cloud 访问指定 Bucket。仅在任务表单提供相应认证方式时使用以下配置;当前 Kafka 向导不使用对象存储角色。
先从任务的认证说明中获取可信账号、外部 ID 和需要回填的角色信息,避免沿用其他环境的账号标识。纯读取任务按需授予读取和列举权限;迁移中转还可能需要写入与清理权限。授权范围应限制到任务使用的 Bucket 和对象路径。
阿里云
- 在阿里云 RAM 访问控制 > 角色 中单击 创建角色。
- 选择可信实体类型 阿里云账号,单击 下一步。
- 填写角色名称,选择 其他云账号,填写当前任务认证说明提供的 SelectDB 阿里云账号,完成角色创建。
- 单击 为角色授权,为任务涉及的 OSS Bucket 和对象路径授予所需权限。纯导入不应默认授予整个对象存储服务的读写权限。
- 进入角色详情,复制 RAM 角色名称 和 ARN,回填到任务表单要求的字段。
- 执行连接校验,确认可以读取目标文件。
腾讯云
- 在腾讯云 访问管理 > 角色 中单击 新建角色,选择角色载体 腾讯云账户。
- 在云账号类型中选择 其他主账号,填写当前任务认证说明提供的 SelectDB 腾讯云账号 ID。
- 按页面要求开启外部 ID 校验,填写当前任务提供的外部 ID,单击 下一步。
- 配置 COS 权限,将范围限制为任务使用的 Bucket 和路径;根据实际操作授予读取、列举或必要的写入权限。
- 按需添加标签,填写角色名称并完成创建。
- 进入角色详情,复制 角色名称 和 RoleArn,回填任务表单并验证访问。
华为云
-
在华为云 统一身份认证服务 中创建委托。
-
填写委托名称,选择普通账号委托,填写当前任务认证说明提供的受托账号。已有配置使用过
selectdbcloud,新任务应核对当前页面提供的值。 -
为任务涉及的 OBS Bucket 和对象路径配置权限。可使用自定义策略授予所需操作;
OBS OperateAccess涵盖读写和删除,不应作为纯读取任务的默认授权。 -
以下为原有读写场景的操作集合示例。用于纯读取时移除不需要的写入操作,并在云侧策略中进一步限制资源范围。
{
"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"
]
}
]
} -
选择授权范围,确认创建委托。
-
将 委托名称 和你的 云账号名称 回填到任务要求的字段,并验证访问。