You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python在字典中构造列表完成Boto3创建Quicksight数据集操作

解决方法

你通过describe_data_set接口提取到的columns变量本身就完全匹配create_data_set要求的InputColumns参数结构,不需要做额外的格式转换,直接把变量赋值到对应参数位置即可。

import boto3

qs = boto3.client('quicksight')

# 提取已有数据集的字段配置
describe_resp = qs.describe_data_set(
    AwsAccountId='xxxxxxxx',
    DataSetId='testdatasetv4'
)
input_columns = describe_resp['DataSet']['PhysicalTableMap']['string']['RelationalTable']['InputColumns']

# 直接传入字段配置创建新数据集
create_resp = qs.create_data_set(
    AwsAccountId=data['AwsAccountId1'],
    DataSetId=data['DatasetId'],
    Name='testdataset',
    PhysicalTableMap={
        'string': {
            'RelationalTable': {
                'DataSourceArn': '替换为你的数据源实际Arn,不要误用上述接口返回的数据集Arn',
                'Schema': 'public',
                'Name': 'sales',
                'InputColumns': input_columns
            }
        }
    },
    # 必填参数,按需求选SPICE或者DIRECT_QUERY
    ImportMode='SPICE'
)

注意事项

  • 你之前写的循环打印逻辑仅用于调试,实际创建时不需要对input_columns做遍历修改
  • describe_data_set返回的Arn是现有数据集的唯一标识,不要误填到DataSourceArn字段,该字段需要填写你关联的数据源(如RDS、S3等连接)的Arn
  • create_data_set要求必须传入ImportMode参数,你之前的示例中遗漏了该参数,请求时需要补充

内容的提问来源于stack exchange,提问作者user16624899

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 10:12:03