跳到主要内容

S3

本文档用于介绍访问 AWS S3 时所需的参数。这些参数适用于:

  • Catalog 属性。
  • Table Valued Function 属性。
  • Broker Load 属性。
  • Export 属性。
  • Outfile 属性。

参数总览

属性名称曾用名描述默认值是否必须
s3.endpointS3 服务访问地址,如 s3.us-east-1.amazonaws.com✅ 是
s3.access_keyAWS Access Key。用于身份验证✅ 是
s3.secret_keyAWS Secret Key。用于身份验证✅ 是
s3.regionS3 所在的区域,例如:us-east-1。强烈建议配置
s3.use_path_style是否使用 path-style(路径风格)访问。false
s3.connection.maximum最大连接数,适用于高并发场景50
s3.connection.request.timeout请求超时时间(毫秒),控制连接获取超时3000
s3.connection.timeout建立连接的超时时间(毫秒)1000
s3.role_arn使用 Assume Role 模式时指定的角色 ARN
s3.external_id配合 s3.role_arn 使用的 external ID

1. 认证配置(必填)

Doris 支持以下两种方式访问 S3:


1.1 方式一:Access Key + Secret Key(推荐)

适用于 AWS S3 或兼容对象存储(如 MinIO、Ceph 等):

"s3.access_key"="your-access-key"
"s3.secret_key"="your-secret-key"
"s3.endpoint"="s3.us-east-1.amazonaws.com"
"s3.region"="us-east-1"

如使用 MinIO 等兼容服务,建议加上:

"s3.use_path_style" = "true"

1.2 方式二:Assume Role 模式(可选)

适用于跨账号、临时授权访问。通过角色授权自动获取临时凭证。

参数说明:

参数说明
s3.role_arn指定可扮演的 AWS IAM 角色的 ARN,例如:arn:aws:iam::123456789012:role/demo-role
s3.external_id可选的外部 ID,用于第三方访问安全控制

示例:

"s3.role_arn"="arn:aws:iam::123456789012:role/demo-role"
"s3.external_id"="external-identifier"
"s3.endpoint"="s3.us-east-1.amazonaws.com"
"s3.region"="us-east-1"

如果同时设置了 Access Key 和 Role ARN,则优先使用 Access Key 模式。


2. 网络连接参数(可选)

用于提升并发性能、避免连接阻塞。

参数说明默认值
s3.connection.maximum最大连接数50
s3.connection.request.timeout请求等待连接超时时间(毫秒)3000
s3.connection.timeout建立连接的超时时间(毫秒)1000

3. 使用 Path-style 访问(兼容性选项)

部分兼容 S3 的对象存储(如 MinIO)不支持默认的 host-style 访问方式,需启用:

"s3.use_path_style"="true"
  • Host-style 访问(默认): https://bucket.s3.amazonaws.com
  • Path-style 访问(开启后): https://s3.amazonaws.com/bucket

4. Directory Bucket 配置(S3 Express One Zone)

📌 该功能自 3.1.0 起支持。

Amazon S3 Express One Zone(又名 Directory Bucket)提供更高性能,但 endpoint 格式不同。

4.1 endpoint 区别

类型示例 endpoint
普通 buckets3.us-east-1.amazonaws.com
Directory Buckets3express-usw2-az1.us-west-2.amazonaws.com

更多可用区域参考:AWS 官方文档

4.2 示例配置

"s3.access_key"="ak"
"s3.secret_key"="sk"
"s3.endpoint"="s3express-usw2-az1.us-west-2.amazonaws.com"
"s3.region"="us-west-2"