用途:该技能封装 Amazon Redshift Data API,用于对 Redshift 预置集群或 Serverless 执行 SQL、查看语句状态与结果,并浏览数据库目录。所有调用都是向 https://redshift-data.<region>.amazonaws.com/ 发送 POST,带 Content-Type: application/x-amz-json-1.1 和 X-Amz-Target: RedshiftData.<Action>,没有 REST 风格路径。API 完全异步:提交语句得到 Id,轮询 DescribeStatement 直到终态,再用 GetStatementResult 分页取结果。
主要能力:运行查询(scripts/rs_query.sh 自动完成提交、轮询、分页与类型解码);按 Id 恢复语句;取消运行中的语句;用 BatchExecuteStatement 在一个事务中执行多条语句;用 ListStatements 查看最近语句;用 ListDatabases、ListSchemas、ListTables、DescribeTable 浏览目录。
使用方式:认证由运行时处理,不要自行获取 AWS 密钥或签名。需配置区域(AWS_DEFAULT_REGION)和连接目标(RS_TARGET,可选 WorkgroupName、ClusterIdentifier+DbUser 或 SecretArn),并设置 RS_DATABASE。查询脚本支持 --param 绑定 :NAME 占位符、--name 命名语句、--max-rows 限制行数、--json 输出。退出码 0 成功,1 提交失败或 SQL 失败,2 超时(语句 id 在 stderr,可用 DescribeStatement 恢复)。
限制:每集群或工作组最多 500 条活跃语句;单语句结果上限 500 MB(gzip 后)、单行 64 KB;结果保留 24 小时;语句最长 24 小时;查询字符串最大 100 KB。API 有固定 TPS 配额,超限返回 ThrottlingException。错误以 {"__type": "<Exception>", "message": "..."} 返回。注意 ExecuteStatement 返回 200 不代表查询成功,SQL 错误只在 DescribeStatement 的 Status: FAILED 中体现;结果单元格是带类型的单键对象,需用 to_entries[0].value 读取。更多动作与原始 HTTP 请求体见 references/api.md。