S3
本文档用于介绍访问 AWS S3 时所需的参数。这些参数适用于:
- Catalog 属性。
- Table Valued Function 属性。
- Broker Load 属性。
- Export 属性。
- Outfile 属性。
参数总览
属性名称 | 曾用名 | 描述 | 默认值 | 是否必须 |
---|---|---|---|---|
s3.endpoint | S3 服务访问地址,如 s3.us-east-1.amazonaws.com | 无 | 否 | |
s3.access_key | AWS Access Key。用于身份验证 | 无 | 否 | |
s3.secret_key | AWS Secret Key。用于身份验证 | 无 | 否 | |
s3.region | S3 所在的区域,例如: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 | 无 | 否 |
认证配置
Doris 支持以下两种方式访问 S3:
- 直接使用 Access Key 和 Secret Key
"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"
- Assume Role 模式
适用于跨账号、临时授权访问。通过角色授权自动获取临时凭证。
"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 模式。
访问 S3 Directory Bucket
该功能自 3.1.0 起支持。
Amazon S3 Express One Zone(又名 Directory Bucket)提供更高性能,但 endpoint 格式不同。
- 普通 bucket:s3.us-east-1.amazonaws.com
- Directory Bucket:s3express-usw2-az1.us-west-2.amazonaws.com
更多可用区域参考:AWS 官方文档
示例:
"s3.access_key"="ak",
"s3.secret_key"="sk",
"s3.endpoint"="s3express-usw2-az1.us-west-2.amazonaws.com",
"s3.region"="us-west-2"