Amazon Redshift 连接¶
Redshift 连接类型允许与 Redshift 集成。
对 Amazon Redshift 进行身份验证¶
可以使用 redshift_connector 支持的任何身份验证方法执行身份验证,例如通过直接凭证、IAM 身份验证或使用身份提供程序 (IdP) 插件。
默认连接 ID¶
默认连接 ID 为 redshift_default
。
配置连接¶
- 主机(可选)
指定 Amazon Redshift 集群端点。
- 架构(可选)
指定 Amazon Redshift 数据库名称。
- 登录名(可选)
指定用于 Amazon Redshift 身份验证的用户名。
- 密码(可选)
指定用于 Amazon Redshift 身份验证的密码。
- 端口(可选)
指定用于与 Amazon Redshift 交互的端口。
- 额外参数(可选)
指定可在 Amazon Redshift 连接中使用的额外参数(作为 JSON 字典)。有关受支持参数的完整列表,请参阅 redshift_connector 的文档。
如果您正在通过 URI 配置连接,请确保对 URI 的所有组件进行 URL 编码。
示例¶
数据库身份验证
架构:
Dev
主机:
redshift-cluster-1.123456789.us-west-1.redshift.amazonaws.com
登录名:
awsuser
密码:
********
端口:
5439
凭证身份验证
使用连接中的凭证连接到 Amazon Redshift。端口是必需的。如果未提供,则使用默认端口 (5439)。这假设所有其他连接字段(例如登录名)为空。在此方法中,cluster_identifier 替换主机和端口以唯一标识集群。
IAM 身份验证
使用在钩子初始化时提供的 AWS IAM 配置文件检索临时密码以连接到 Amazon Redshift。端口是必需的。如果未提供,则使用默认端口 (5439)。登录名和架构也是必需的。这假设所有其他连接字段为空。在此方法中,如果未在额外参数中设置 cluster_identifier,则会通过连接中的主机字段自动推断。 有关 AWS IAM 身份验证以生成数据库用户凭证的更多详细信息。
额外参数:
{
"iam": true,
"cluster_identifier": "redshift-cluster-1",
"port": 5439,
"region": "us-east-1",
"db_user": "awsuser",
"database": "dev",
"profile": "default"
}
如果要将 IAM 与 Amazon Redshift Serverless 一起使用,则需要将 is_serverless 设置为 true 并提供 serverless_work_group。您还可以设置 serverless_token_duration_seconds 以指定返回的临时密码过期前的秒数;最小值为 900 秒,最大值为 3600 秒,默认值为 3600 秒。
额外参数:
{
"iam": true,
"is_serverless": true,
"serverless_work_group": "default",
"serverless_token_duration_seconds": 3600,
"port": 5439,
"region": "us-east-1",
"database": "dev",
"profile": "default"
}