You need to enable JavaScript to run this app.
文档中心
大数据研发治理套件

大数据研发治理套件

复制全文
下载 pdf
TOS
配置 TOS 数据源
复制全文
下载 pdf
配置 TOS 数据源

DataSail 支持将 TOS 作为离线读取、离线写入和实时写入数据源。本文为您介绍在 DataSail 中配置火山引擎对象存储 TOS 数据源的方法,以及 TOS 数据源支持的同步能力、文件格式、字段类型、权限要求等信息。

1 支持的能力

数据源

离线读取

离线写入

实时读取

实时写入

TOS

支持

支持

不支持

支持

1.1 支持的文件格式

文件格式

读取

写入

说明

CSV

支持

支持

适用于使用分隔符组织的文本数据。

TXT

支持

不支持

读取时需正确配置分隔符。

JSON

支持

支持

支持结构化 JSON 数据。

Parquet

支持

支持

列式存储格式。推荐用于结构化大数据量。

ORC

不支持

支持

列式存储格式。

PB(Protocol Buffers)

支持

不支持

读取时需提供相应的解析配置。

ZIP

支持

不支持

读取时需设置 compress_codec=zip。

说明

写入 CSV、JSON、Parquet 或 ORC 文件时,可根据文件格式选择 None、Snappy、Lz4、Gzip 或 Zstd 等压缩方式。实际可选项以任务配置页面为准。

2 前置条件

2.1 使用前提

  • 已开通 TOS 服务,并创建 TOS 存储桶。详见创建存储桶。
  • 已获取可访问 TOS 存储桶的 Access Key ID 和 Secret Access Key。
  • 子账号新建数据源时,需要有项目的管理员角色,方可以进行新建数据源操作。各角色对应权限说明,详见管理成员信息。

2.2 权限要求

DataSail 通过 AK/SK 访问 TOS 存储桶,所使用的密钥需要具备以下权限:

操作

所需最低权限

说明

离线读

tos:GetObject + tos:ListBucket

读取 Bucket 内文件列表和文件内容。

离线写

tos:PutObject + tos:ListBucket

写入文件到 Bucket。

覆盖写入

tos:DeleteObject(额外)

覆盖模式需先删除原有文件。

推荐的 IAM 策略配置如下:

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "tos:GetObject",
        "tos:PutObject",
        "tos:DeleteObject",
        "tos:ListBucket"
      ],
      "Resource": [
        "trn:tos:::your-bucket-name",
        "trn:tos:::your-bucket-name/*"
      ]
    }
  ]
}

说明

策略配置采用最小权限原则:如果仅做读取同步,只需配置 GetObject + ListBucket;如果需要写入且使用覆盖模式,需额外配置 DeleteObject。

2.4 网络连通要求

确保同步任务使用的独享集成资源组能够访问 TOS 服务的 Endpoint:

网络环境

TOS Endpoint 示例

说明

同 Region 内网

tos-cn-beijing.ivolces.com

推荐,无公网流量费用。

跨 Region / 公网

tos-cn-beijing.volces.com

需开通资源组公网。

说明

独享集成资源组与 TOS 存储桶在同一 Region 时,默认通过内网访问,无需额外网络配置。跨 Region 需开通公网访问,详见开通公网。

2.4 使用限制

限制项

说明

单个 Object 大小上限

不超过 100 GB。

并发限制

单个 Object(File)不支持多线程并发读取。

压缩文件并发

压缩文件技术上无法支持多线程并发读取。

数据格式

仅支持能够抽象为逻辑二维表的结构化/半结构化数据。

Proton 桶类型

以白名单形式控制,需提工单申请开通。

注意

准备 TOS 数据时,如果数据为 TXT、CSV 文件,则文本字段中不能包含分隔符,否则会导致字段错位(串行)。

3 支持的字段类型

  • TOS Reader 字段类型

    类型分类

    数据集成 column 配置类型

    整数

    Long

    字符串

    String

    浮点

    Double

    布尔

    Boolean

    日期时间

    Date

  • TOS Writer 字段类型

    类型分类

    数据集成 column 配置类型

    整数

    Tinyint、Smallint、Int、Long、Bigint

    字符串

    String、Varchar、Char

    浮点数与定点数

    Float、Double、Decimal

    布尔

    Boolean

    二进制

    Binary

    日期时间

    Date、Timestamp

说明

Reader 和 Writer 存在以下类型差异:

  • TOS Reader 的字段类型较为精简(5 种基本类型),这是因为 TOS 存储的是非结构化文件,Reader 需要将文件内容解析为逻辑二维表。而 Writer 支持更丰富的类型,可以将上游不同数据源的类型精确写入目标文件。
  • 如果需要精确的类型映射(如从 MySQL 的 DECIMAL 同步到 TOS),Writer 端会正确保留 Decimal 精度;Reader 端读取时则统一映射为 Double,可能存在精度损失。对精度敏感的场景,建议使用 Parquet 格式存储。

4 数据源注册

新建数据源操作详见配置数据源,下面为您介绍不同接入方式的 TOS 数据源配置相关信息。

4.1 火山引擎 TOS 接入方式

火山引擎 TOS 接入方式的参数说明如下表所示,其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。

参数

说明

基本配置

*数据源类型

TOS

*接入方式

火山引擎 TOS

*数据源名称

数据源的名称,可自行设置,仅支持中文,英文,数字,“_”,100个字符以内。

参数配置

*TOS 对象存储桶

下拉选择当前租户下已创建成功的 TOS 存储桶名称信息。若现有存储桶不符合您的要求,您可前往 TOS 控制台创建。
创建操作详见创建存储桶。

*Access key ID

进入火山引擎,访问控制台的密钥管理界面,复制 Accesskey ID 填写到此处。如果为子用户的 AK/SK 信息,可联系主账号获取或创建子用户密钥。详见秘钥管理。

说明

填写的 AK/SK 信息,需要有对应存储桶的读取权限。

*Secret Access Key

与 Access Key ID 配套使用,类似登录密码,用于签名您的访问参数,以防被篡改。

4.2 连接串形式接入方式

连接串形式接入方式的参数说明如下表所示,其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。

参数

说明

基本配置

*数据源类型

TOS

*接入方式

连接串

*数据源名称

数据源的名称,可自行设置,仅支持中文,英文,数字,“_”,100个字符以内。

参数配置

*TOS 对象存储桶

连接串形式需手动填写想访问对应租户下的存储桶名称。

*Accesskey ID

进入火山引擎,访问控制台的密钥管理界面,复制 Accesskey ID 填写到此处。如果为子用户的 AK/SK 信息,可联系主账号获取或创建子用户密钥。详见秘钥管理。

说明

填写的 AK/SK 信息,需要有对应存储桶的读取权限。

*Secret Access Key

与 AccessKey ID 配套使用,类似登录密码,用于签名您的访问参数,以防被篡改。

4.3 两种接入方式的选择

火山引擎 TOS 方式可直接选择当前账号可见的 Bucket,配置更便捷;连接串方式适用于跨账号、手动指定 Bucket 或兼容 S3 协议存储的场景。

5 兼容 S3 协议的对象存储

如需接入 AWS S3、阿里云 OSS、腾讯云 COS、MinIO 等兼容 S3 协议的对象存储,可使用连接串方式注册,并在任务高级参数中指定 S3 Endpoint。

  • 读取端:job.reader.s3a_endpoint
  • 写入端:job.writer.s3a_endpoint

注意

不同厂商对签名、Path Style、区域和 TLS 的要求不同。上线前请使用实际 Bucket、Endpoint 和资源组完成连接与读写验证。

6 后续操作

数据源注册完成后,可在离线集成任务或流式集成任务中选择该数据源。配置 TOS 任务的详细说明,请参见配置 TOS 任务。

最近更新时间:2026.07.24 17:40:51
这个页面对您有帮助吗?
有用
有用
无用
无用