📣TiDB Cloud BYOC、TiDB Cloud Filesystem 和 PostgreSQL-compatible TiDB Cloud Starter 全新发布,开放公测中。此页面由 AI 自动翻译,英文原文请见此处。

TiDB 数据源(预览)



TiDB 数据源用于存储对象存储位置、凭证以及可选的事件队列,TiDB Cloud Lake 会使用这些信息读取由 TiDB 集群暂存的数据。它不会连接到 TiDB 服务器本身。Dumpling 和 TiCDC 会将导出数据和变更事件写入对象存储 bucket,而 TiDB Cloud Lake 则从该 bucket 中读取数据。

使用场景

  • 为多个 TiDB 同步任务集中管理 staging bucket、凭证和可选的 SQS 队列
  • 避免在每个任务中重复输入相同的 bucket 和授权设置
  • 使用 IAM Role 代替静态密钥,使 TiDB Cloud Lake 获取短期凭证
  • 当多个任务引用同一个 bucket、role 或 queue 时,可在一个位置统一更新

为集成准备 TiDB

TiDB Cloud 会将全量快照(Dumpling)和增量变更(TiCDC)导出到对象存储 bucket。由于不同 TiDB Cloud 套餐之间存在差异,我们建议针对每种套餐采用特定的设置路径,以尽量减少配置并确保数据兼容。

创建 TiDB 数据源

  1. 进入 Data > Data Sources,然后点击 Create。

  2. 选择 TiDB 作为服务,然后填写数据源的 Name。

  3. 选择 Storage Provider 和 Authentication Method,然后填写连接详细信息。显示的字段取决于你选择的组合。参见下文的 Amazon S3 或 Alibaba Cloud OSS。

  4. 点击 Test Connectivity 验证 bucket 和凭证。如果测试成功,点击 OK 保存数据源。

Amazon S3

当存储提供商为 Amazon S3 时,请选择以下其中一种身份验证方法。

Role ARN 使用 AssumeRole 模型。TiDB Cloud Lake 会假设你 AWS 账户中的 IAM Role 并获取临时凭证,因此你无需将静态密钥交给 TiDB Cloud Lake。

在保存数据源之前,你的 IAM Role 信任策略必须信任这两个平台角色(TiDB Cloud Lake 设置与验证角色,以及 TiDB Cloud Lake 数据加载角色),并在 sts:ExternalId 条件中指定对应的 External ID。有关完整的信任策略配置,请参见 Authenticate with AWS IAM Role。

字段必填说明
Name是此数据源的描述性名称
Storage Provider是选择 Amazon S3
Authentication Method是选择 Role ARN
Role ARN是你 AWS 账户中的 IAM Role ARN,TiDB Cloud Lake 被允许假设该角色,例如 arn:aws:iam::123456789012:role/tidbcloud-lake-tidb
S3 Bucket Name是TiCDC / Dumpling 暂存数据、供 TiDB Cloud Lake 加载的 bucket
S3 Region是bucket 所在的 AWS Region,例如 us-east-1
S3 Endpoint否仅用于 MinIO 等兼容 S3 的存储,例如 http://localhost:9000。对于 Amazon S3 请留空
SQS Queue URL否用于事件驱动模式的可选标准 SQS 队列 URL。参见 可选 SQS 队列

身份验证方法:Access Key / Secret Key

当你更倾向于使用静态凭证时,可使用此方法,例如用于不支持角色假设的兼容 S3 存储。

更多信息,请参见 Amazon S3 - Credentials。

字段必填说明
Name是此数据源的描述性名称
Storage Provider是选择 Amazon S3
Authentication Method是选择 Access Key / Secret Key
S3 Access Key是具有对 staging 存储桶访问权限的 Access key ID
S3 Secret Key是与 access key ID 配对的 Secret access key
S3 Bucket Name是TiCDC / Dumpling 暂存数据、供 TiDB Cloud Lake 加载的存储桶
S3 Region是存储桶所在的 AWS Region
S3 Endpoint否仅用于兼容 S3 的存储。对于 Amazon S3 请留空
SQS Queue URL否用于事件驱动模式的可选标准 SQS 队列 URL

Alibaba Cloud OSS

当存储提供商为 Alibaba Cloud OSS 时,TiDB Cloud Lake 会从 Alibaba Cloud 读取 staging bucket。OSS 仅支持 Access Key / Secret Key 身份验证。

字段必填说明
Name是此数据源的描述性名称
Storage Provider是选择 Alibaba Cloud OSS
OSS Access Key ID是OSS AccessKey ID
OSS AccessKey Secret是OSS AccessKey Secret
OSS Bucket是TiCDC / Dumpling 暂存数据的 OSS 存储桶
OSS Region只读Lake 的部署 Region。该值会自动显示,且无法修改

可选 SQS 队列

SQS Queue URL 字段是可选的,并且仅适用于 Amazon S3。当你提供一个接收 staging bucket 的 S3 ObjectCreated 事件的标准 SQS 队列时,TiDB Cloud Lake 可以从该队列中发现新写入的 changefeed / export 对象,而不必等待下一次轮询。

  • 该队列必须是 standard 队列。不支持 FIFO 队列,因为 S3 事件通知无法投递到这类队列。
  • S3 bucket 和 SQS 队列应位于同一个 Region。
  • 轮询 bucket 仍然是权威的发现路径,SQS 只是用于优化延时,而不是替代方案。
  • 如果将此字段留空,任务将通过轮询来发现对象。

有关队列、bucket 通知和信任策略设置,请参见 Amazon SQS (S3) - IAM Role (Preview)。

后续步骤

创建此数据源后,你可以使用它来创建 TiDB 集成任务(预览版)。

文档内容是否有帮助?