Amazon QuickSight

2020/12/08 - Amazon QuickSight - 3 updated api methods

Changes  Added new parameters for join optimization.

CreateDataSet (updated) Link ¶
Changes (request)
{'LogicalTableMap': {'Source': {'JoinInstruction': {'LeftJoinKeyProperties': {'UniqueKey': 'boolean'},
                                                    'RightJoinKeyProperties': {'UniqueKey': 'boolean'}}}}}

Creates a dataset.

See also: AWS API Documentation

Request Syntax

client.create_data_set(
    AwsAccountId='string',
    DataSetId='string',
    Name='string',
    PhysicalTableMap={
        'string': {
            'RelationalTable': {
                'DataSourceArn': 'string',
                'Schema': 'string',
                'Name': 'string',
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'CustomSql': {
                'DataSourceArn': 'string',
                'Name': 'string',
                'SqlQuery': 'string',
                'Columns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'S3Source': {
                'DataSourceArn': 'string',
                'UploadSettings': {
                    'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                    'StartFromRow': 123,
                    'ContainsHeader': True|False,
                    'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                    'Delimiter': 'string'
                },
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            }
        }
    },
    LogicalTableMap={
        'string': {
            'Alias': 'string',
            'DataTransforms': [
                {
                    'ProjectOperation': {
                        'ProjectedColumns': [
                            'string',
                        ]
                    },
                    'FilterOperation': {
                        'ConditionExpression': 'string'
                    },
                    'CreateColumnsOperation': {
                        'Columns': [
                            {
                                'ColumnName': 'string',
                                'ColumnId': 'string',
                                'Expression': 'string'
                            },
                        ]
                    },
                    'RenameColumnOperation': {
                        'ColumnName': 'string',
                        'NewColumnName': 'string'
                    },
                    'CastColumnTypeOperation': {
                        'ColumnName': 'string',
                        'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                        'Format': 'string'
                    },
                    'TagColumnOperation': {
                        'ColumnName': 'string',
                        'Tags': [
                            {
                                'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                'ColumnDescription': {
                                    'Text': 'string'
                                }
                            },
                        ]
                    }
                },
            ],
            'Source': {
                'JoinInstruction': {
                    'LeftOperand': 'string',
                    'RightOperand': 'string',
                    'LeftJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'RightJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                    'OnClause': 'string'
                },
                'PhysicalTableId': 'string'
            }
        }
    },
    ImportMode='SPICE'|'DIRECT_QUERY',
    ColumnGroups=[
        {
            'GeoSpatialColumnGroup': {
                'Name': 'string',
                'CountryCode': 'US',
                'Columns': [
                    'string',
                ]
            }
        },
    ],
    Permissions=[
        {
            'Principal': 'string',
            'Actions': [
                'string',
            ]
        },
    ],
    RowLevelPermissionDataSet={
        'Namespace': 'string',
        'Arn': 'string',
        'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS'
    },
    ColumnLevelPermissionRules=[
        {
            'Principals': [
                'string',
            ],
            'ColumnNames': [
                'string',
            ]
        },
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type AwsAccountId

string

param AwsAccountId

[REQUIRED]

The AWS account ID.

type DataSetId

string

param DataSetId

[REQUIRED]

An ID for the dataset that you want to create. This ID is unique per AWS Region for each AWS account.

type Name

string

param Name

[REQUIRED]

The display name for the dataset.

type PhysicalTableMap

dict

param PhysicalTableMap

[REQUIRED]

Declares the physical tables that are available in the underlying data sources.

  • (string) --

    • (dict) --

      A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

      • RelationalTable (dict) --

        A physical table type for relational data sources.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • Schema (string) --

          The schema name. This name applies to certain relational database engines.

        • Name (string) -- [REQUIRED]

          The name of the relational table.

        • InputColumns (list) -- [REQUIRED]

          The column schema of the table.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • CustomSql (dict) --

        A physical table type built from the results of the custom SQL query.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) of the data source.

        • Name (string) -- [REQUIRED]

          A display name for the SQL query result.

        • SqlQuery (string) -- [REQUIRED]

          The SQL query.

        • Columns (list) --

          The column schema from the SQL query result set.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • S3Source (dict) --

        A physical table type for as S3 data source.

        • DataSourceArn (string) -- [REQUIRED]

          The amazon Resource Name (ARN) for the data source.

        • UploadSettings (dict) --

          Information about the format for the S3 source file or files.

          • Format (string) --

            File format.

          • StartFromRow (integer) --

            A row number to start reading data from.

          • ContainsHeader (boolean) --

            Whether the file has a header row, or the files each have a header row.

          • TextQualifier (string) --

            Text qualifier.

          • Delimiter (string) --

            The delimiter between values in the file.

        • InputColumns (list) -- [REQUIRED]

          A physical table type for as S3 data source.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

type LogicalTableMap

dict

param LogicalTableMap

Configures the combination and transformation of the data from the physical tables.

  • (string) --

    • (dict) --

      A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

      • Alias (string) -- [REQUIRED]

        A display name for the logical table.

      • DataTransforms (list) --

        Transform operations that act on this logical table.

        • (dict) --

          A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • ProjectOperation (dict) --

            An operation that projects columns. Operations that come after a projection can only refer to projected columns.

            • ProjectedColumns (list) -- [REQUIRED]

              Projected columns.

              • (string) --

          • FilterOperation (dict) --

            An operation that filters rows based on some condition.

            • ConditionExpression (string) -- [REQUIRED]

              An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

          • CreateColumnsOperation (dict) --

            An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

            • Columns (list) -- [REQUIRED]

              Calculated columns to create.

              • (dict) --

                A calculated column for a dataset.

                • ColumnName (string) -- [REQUIRED]

                  Column name.

                • ColumnId (string) -- [REQUIRED]

                  A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                • Expression (string) -- [REQUIRED]

                  An expression that defines the calculated column.

          • RenameColumnOperation (dict) --

            An operation that renames a column.

            • ColumnName (string) -- [REQUIRED]

              The name of the column to be renamed.

            • NewColumnName (string) -- [REQUIRED]

              The new name for the column.

          • CastColumnTypeOperation (dict) --

            A transform operation that casts a column to a different type.

            • ColumnName (string) -- [REQUIRED]

              Column name.

            • NewColumnType (string) -- [REQUIRED]

              New column data type.

            • Format (string) --

              When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

          • TagColumnOperation (dict) --

            An operation that tags a column with additional information.

            • ColumnName (string) -- [REQUIRED]

              The column that this operation acts on.

            • Tags (list) -- [REQUIRED]

              The dataset column tag, currently only used for geospatial type tagging. .

              Note

              This is not tags for the AWS tagging feature. .

              • (dict) --

                A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ColumnGeographicRole (string) --

                  A geospatial role for a column.

                • ColumnDescription (dict) --

                  A description for a column.

                  • Text (string) --

                    The text of a description for a column.

      • Source (dict) -- [REQUIRED]

        Source of this logical table.

        • JoinInstruction (dict) --

          Specifies the result of a join of two logical tables.

          • LeftOperand (string) -- [REQUIRED]

            The operand on the left side of a join.

          • RightOperand (string) -- [REQUIRED]

            The operand on the right side of a join.

          • LeftJoinKeyProperties (dict) --

            Join key properties of the left operand.

            • UniqueKey (boolean) --

              Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • RightJoinKeyProperties (dict) --

            Join key properties of the right operand.

            • UniqueKey (boolean) --

              Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • Type (string) -- [REQUIRED]

            The type of join that it is.

          • OnClause (string) -- [REQUIRED]

            The join instructions provided in the ON clause of a join.

        • PhysicalTableId (string) --

          Physical table ID.

type ImportMode

string

param ImportMode

[REQUIRED]

Indicates whether you want to import the data into SPICE.

type ColumnGroups

list

param ColumnGroups

Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.

  • (dict) --

    Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

    • GeoSpatialColumnGroup (dict) --

      Geospatial column group that denotes a hierarchy.

      • Name (string) -- [REQUIRED]

        A display name for the hierarchy.

      • CountryCode (string) -- [REQUIRED]

        Country code.

      • Columns (list) -- [REQUIRED]

        Columns in this hierarchy.

        • (string) --

type Permissions

list

param Permissions

A list of resource permissions on the dataset.

  • (dict) --

    Permission for the resource.

    • Principal (string) -- [REQUIRED]

      The Amazon Resource Name (ARN) of the principal. This can be one of the following:

      • The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

      • The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

      • The ARN of an AWS account root: This is an IAM ARN rather than a QuickSight ARN. Use this option only to share resources (templates) across AWS accounts. (This is less common.)

    • Actions (list) -- [REQUIRED]

      The IAM action to grant or revoke permissions on.

      • (string) --

type RowLevelPermissionDataSet

dict

param RowLevelPermissionDataSet

The row-level security configuration for the data that you want to create.

  • Namespace (string) --

    The namespace associated with the row-level permissions dataset.

  • Arn (string) -- [REQUIRED]

    The Amazon Resource Name (ARN) of the permission dataset.

  • PermissionPolicy (string) -- [REQUIRED]

    Permission policy.

type ColumnLevelPermissionRules

list

param ColumnLevelPermissionRules

A set of one or more definitions of a `` ColumnLevelPermissionRule `` .

  • (dict) --

    A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

    • Principals (list) --

      An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

      • (string) --

    • ColumnNames (list) --

      An array of column names.

      • (string) --

type Tags

list

param Tags

Contains a map of the key-value pairs for the resource tag or tags assigned to the dataset.

  • (dict) --

    The key or keys of the key-value pairs for the resource tag or tags assigned to the resource.

    • Key (string) -- [REQUIRED]

      Tag key.

    • Value (string) -- [REQUIRED]

      Tag value.

rtype

dict

returns

Response Syntax

{
    'Arn': 'string',
    'DataSetId': 'string',
    'IngestionArn': 'string',
    'IngestionId': 'string',
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the dataset.

    • DataSetId (string) --

      The ID for the dataset that you want to create. This ID is unique per AWS Region for each AWS account.

    • IngestionArn (string) --

      The ARN for the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • IngestionId (string) --

      The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • RequestId (string) --

      The AWS request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.

DescribeDataSet (updated) Link ¶
Changes (response)
{'DataSet': {'LogicalTableMap': {'Source': {'JoinInstruction': {'LeftJoinKeyProperties': {'UniqueKey': 'boolean'},
                                                                'RightJoinKeyProperties': {'UniqueKey': 'boolean'}}}}}}

Describes a dataset.

See also: AWS API Documentation

Request Syntax

client.describe_data_set(
    AwsAccountId='string',
    DataSetId='string'
)
type AwsAccountId

string

param AwsAccountId

[REQUIRED]

The AWS account ID.

type DataSetId

string

param DataSetId

[REQUIRED]

The ID for the dataset that you want to create. This ID is unique per AWS Region for each AWS account.

rtype

dict

returns

Response Syntax

{
    'DataSet': {
        'Arn': 'string',
        'DataSetId': 'string',
        'Name': 'string',
        'CreatedTime': datetime(2015, 1, 1),
        'LastUpdatedTime': datetime(2015, 1, 1),
        'PhysicalTableMap': {
            'string': {
                'RelationalTable': {
                    'DataSourceArn': 'string',
                    'Schema': 'string',
                    'Name': 'string',
                    'InputColumns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                },
                'CustomSql': {
                    'DataSourceArn': 'string',
                    'Name': 'string',
                    'SqlQuery': 'string',
                    'Columns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                },
                'S3Source': {
                    'DataSourceArn': 'string',
                    'UploadSettings': {
                        'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                        'StartFromRow': 123,
                        'ContainsHeader': True|False,
                        'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                        'Delimiter': 'string'
                    },
                    'InputColumns': [
                        {
                            'Name': 'string',
                            'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                        },
                    ]
                }
            }
        },
        'LogicalTableMap': {
            'string': {
                'Alias': 'string',
                'DataTransforms': [
                    {
                        'ProjectOperation': {
                            'ProjectedColumns': [
                                'string',
                            ]
                        },
                        'FilterOperation': {
                            'ConditionExpression': 'string'
                        },
                        'CreateColumnsOperation': {
                            'Columns': [
                                {
                                    'ColumnName': 'string',
                                    'ColumnId': 'string',
                                    'Expression': 'string'
                                },
                            ]
                        },
                        'RenameColumnOperation': {
                            'ColumnName': 'string',
                            'NewColumnName': 'string'
                        },
                        'CastColumnTypeOperation': {
                            'ColumnName': 'string',
                            'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                            'Format': 'string'
                        },
                        'TagColumnOperation': {
                            'ColumnName': 'string',
                            'Tags': [
                                {
                                    'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                    'ColumnDescription': {
                                        'Text': 'string'
                                    }
                                },
                            ]
                        }
                    },
                ],
                'Source': {
                    'JoinInstruction': {
                        'LeftOperand': 'string',
                        'RightOperand': 'string',
                        'LeftJoinKeyProperties': {
                            'UniqueKey': True|False
                        },
                        'RightJoinKeyProperties': {
                            'UniqueKey': True|False
                        },
                        'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                        'OnClause': 'string'
                    },
                    'PhysicalTableId': 'string'
                }
            }
        },
        'OutputColumns': [
            {
                'Name': 'string',
                'Description': 'string',
                'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'
            },
        ],
        'ImportMode': 'SPICE'|'DIRECT_QUERY',
        'ConsumedSpiceCapacityInBytes': 123,
        'ColumnGroups': [
            {
                'GeoSpatialColumnGroup': {
                    'Name': 'string',
                    'CountryCode': 'US',
                    'Columns': [
                        'string',
                    ]
                }
            },
        ],
        'RowLevelPermissionDataSet': {
            'Namespace': 'string',
            'Arn': 'string',
            'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS'
        },
        'ColumnLevelPermissionRules': [
            {
                'Principals': [
                    'string',
                ],
                'ColumnNames': [
                    'string',
                ]
            },
        ]
    },
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • DataSet (dict) --

      Information on the dataset.

      • Arn (string) --

        The Amazon Resource Name (ARN) of the resource.

      • DataSetId (string) --

        The ID of the dataset.

      • Name (string) --

        A display name for the dataset.

      • CreatedTime (datetime) --

        The time that this dataset was created.

      • LastUpdatedTime (datetime) --

        The last time that this dataset was updated.

      • PhysicalTableMap (dict) --

        Declares the physical tables that are available in the underlying data sources.

        • (string) --

          • (dict) --

            A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

            • RelationalTable (dict) --

              A physical table type for relational data sources.

              • DataSourceArn (string) --

                The Amazon Resource Name (ARN) for the data source.

              • Schema (string) --

                The schema name. This name applies to certain relational database engines.

              • Name (string) --

                The name of the relational table.

              • InputColumns (list) --

                The column schema of the table.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

            • CustomSql (dict) --

              A physical table type built from the results of the custom SQL query.

              • DataSourceArn (string) --

                The Amazon Resource Name (ARN) of the data source.

              • Name (string) --

                A display name for the SQL query result.

              • SqlQuery (string) --

                The SQL query.

              • Columns (list) --

                The column schema from the SQL query result set.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

            • S3Source (dict) --

              A physical table type for as S3 data source.

              • DataSourceArn (string) --

                The amazon Resource Name (ARN) for the data source.

              • UploadSettings (dict) --

                Information about the format for the S3 source file or files.

                • Format (string) --

                  File format.

                • StartFromRow (integer) --

                  A row number to start reading data from.

                • ContainsHeader (boolean) --

                  Whether the file has a header row, or the files each have a header row.

                • TextQualifier (string) --

                  Text qualifier.

                • Delimiter (string) --

                  The delimiter between values in the file.

              • InputColumns (list) --

                A physical table type for as S3 data source.

                • (dict) --

                  Metadata for a column that is used as the input of a transform operation.

                  • Name (string) --

                    The name of this column in the underlying data source.

                  • Type (string) --

                    The data type of the column.

      • LogicalTableMap (dict) --

        Configures the combination and transformation of the data from the physical tables.

        • (string) --

          • (dict) --

            A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

            • Alias (string) --

              A display name for the logical table.

            • DataTransforms (list) --

              Transform operations that act on this logical table.

              • (dict) --

                A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ProjectOperation (dict) --

                  An operation that projects columns. Operations that come after a projection can only refer to projected columns.

                  • ProjectedColumns (list) --

                    Projected columns.

                    • (string) --

                • FilterOperation (dict) --

                  An operation that filters rows based on some condition.

                  • ConditionExpression (string) --

                    An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

                • CreateColumnsOperation (dict) --

                  An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

                  • Columns (list) --

                    Calculated columns to create.

                    • (dict) --

                      A calculated column for a dataset.

                      • ColumnName (string) --

                        Column name.

                      • ColumnId (string) --

                        A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                      • Expression (string) --

                        An expression that defines the calculated column.

                • RenameColumnOperation (dict) --

                  An operation that renames a column.

                  • ColumnName (string) --

                    The name of the column to be renamed.

                  • NewColumnName (string) --

                    The new name for the column.

                • CastColumnTypeOperation (dict) --

                  A transform operation that casts a column to a different type.

                  • ColumnName (string) --

                    Column name.

                  • NewColumnType (string) --

                    New column data type.

                  • Format (string) --

                    When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

                • TagColumnOperation (dict) --

                  An operation that tags a column with additional information.

                  • ColumnName (string) --

                    The column that this operation acts on.

                  • Tags (list) --

                    The dataset column tag, currently only used for geospatial type tagging. .

                    Note

                    This is not tags for the AWS tagging feature. .

                    • (dict) --

                      A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                      • ColumnGeographicRole (string) --

                        A geospatial role for a column.

                      • ColumnDescription (dict) --

                        A description for a column.

                        • Text (string) --

                          The text of a description for a column.

            • Source (dict) --

              Source of this logical table.

              • JoinInstruction (dict) --

                Specifies the result of a join of two logical tables.

                • LeftOperand (string) --

                  The operand on the left side of a join.

                • RightOperand (string) --

                  The operand on the right side of a join.

                • LeftJoinKeyProperties (dict) --

                  Join key properties of the left operand.

                  • UniqueKey (boolean) --

                    Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

                • RightJoinKeyProperties (dict) --

                  Join key properties of the right operand.

                  • UniqueKey (boolean) --

                    Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

                • Type (string) --

                  The type of join that it is.

                • OnClause (string) --

                  The join instructions provided in the ON clause of a join.

              • PhysicalTableId (string) --

                Physical table ID.

      • OutputColumns (list) --

        The list of columns after all transforms. These columns are available in templates, analyses, and dashboards.

        • (dict) --

          Output column.

          • Name (string) --

            A display name for the dataset.

          • Description (string) --

            A description for a column.

          • Type (string) --

            Type.

      • ImportMode (string) --

        Indicates whether you want to import the data into SPICE.

      • ConsumedSpiceCapacityInBytes (integer) --

        The amount of SPICE capacity used by this dataset. This is 0 if the dataset isn't imported into SPICE.

      • ColumnGroups (list) --

        Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.

        • (dict) --

          Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • GeoSpatialColumnGroup (dict) --

            Geospatial column group that denotes a hierarchy.

            • Name (string) --

              A display name for the hierarchy.

            • CountryCode (string) --

              Country code.

            • Columns (list) --

              Columns in this hierarchy.

              • (string) --

      • RowLevelPermissionDataSet (dict) --

        The row-level security configuration for the dataset.

        • Namespace (string) --

          The namespace associated with the row-level permissions dataset.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the permission dataset.

        • PermissionPolicy (string) --

          Permission policy.

      • ColumnLevelPermissionRules (list) --

        A set of one or more definitions of a `` ColumnLevelPermissionRule `` .

        • (dict) --

          A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

          • Principals (list) --

            An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

            • (string) --

          • ColumnNames (list) --

            An array of column names.

            • (string) --

    • RequestId (string) --

      The AWS request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.

UpdateDataSet (updated) Link ¶
Changes (request)
{'LogicalTableMap': {'Source': {'JoinInstruction': {'LeftJoinKeyProperties': {'UniqueKey': 'boolean'},
                                                    'RightJoinKeyProperties': {'UniqueKey': 'boolean'}}}}}

Updates a dataset.

See also: AWS API Documentation

Request Syntax

client.update_data_set(
    AwsAccountId='string',
    DataSetId='string',
    Name='string',
    PhysicalTableMap={
        'string': {
            'RelationalTable': {
                'DataSourceArn': 'string',
                'Schema': 'string',
                'Name': 'string',
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'CustomSql': {
                'DataSourceArn': 'string',
                'Name': 'string',
                'SqlQuery': 'string',
                'Columns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            },
            'S3Source': {
                'DataSourceArn': 'string',
                'UploadSettings': {
                    'Format': 'CSV'|'TSV'|'CLF'|'ELF'|'XLSX'|'JSON',
                    'StartFromRow': 123,
                    'ContainsHeader': True|False,
                    'TextQualifier': 'DOUBLE_QUOTE'|'SINGLE_QUOTE',
                    'Delimiter': 'string'
                },
                'InputColumns': [
                    {
                        'Name': 'string',
                        'Type': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME'|'BIT'|'BOOLEAN'|'JSON'
                    },
                ]
            }
        }
    },
    LogicalTableMap={
        'string': {
            'Alias': 'string',
            'DataTransforms': [
                {
                    'ProjectOperation': {
                        'ProjectedColumns': [
                            'string',
                        ]
                    },
                    'FilterOperation': {
                        'ConditionExpression': 'string'
                    },
                    'CreateColumnsOperation': {
                        'Columns': [
                            {
                                'ColumnName': 'string',
                                'ColumnId': 'string',
                                'Expression': 'string'
                            },
                        ]
                    },
                    'RenameColumnOperation': {
                        'ColumnName': 'string',
                        'NewColumnName': 'string'
                    },
                    'CastColumnTypeOperation': {
                        'ColumnName': 'string',
                        'NewColumnType': 'STRING'|'INTEGER'|'DECIMAL'|'DATETIME',
                        'Format': 'string'
                    },
                    'TagColumnOperation': {
                        'ColumnName': 'string',
                        'Tags': [
                            {
                                'ColumnGeographicRole': 'COUNTRY'|'STATE'|'COUNTY'|'CITY'|'POSTCODE'|'LONGITUDE'|'LATITUDE',
                                'ColumnDescription': {
                                    'Text': 'string'
                                }
                            },
                        ]
                    }
                },
            ],
            'Source': {
                'JoinInstruction': {
                    'LeftOperand': 'string',
                    'RightOperand': 'string',
                    'LeftJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'RightJoinKeyProperties': {
                        'UniqueKey': True|False
                    },
                    'Type': 'INNER'|'OUTER'|'LEFT'|'RIGHT',
                    'OnClause': 'string'
                },
                'PhysicalTableId': 'string'
            }
        }
    },
    ImportMode='SPICE'|'DIRECT_QUERY',
    ColumnGroups=[
        {
            'GeoSpatialColumnGroup': {
                'Name': 'string',
                'CountryCode': 'US',
                'Columns': [
                    'string',
                ]
            }
        },
    ],
    RowLevelPermissionDataSet={
        'Namespace': 'string',
        'Arn': 'string',
        'PermissionPolicy': 'GRANT_ACCESS'|'DENY_ACCESS'
    },
    ColumnLevelPermissionRules=[
        {
            'Principals': [
                'string',
            ],
            'ColumnNames': [
                'string',
            ]
        },
    ]
)
type AwsAccountId

string

param AwsAccountId

[REQUIRED]

The AWS account ID.

type DataSetId

string

param DataSetId

[REQUIRED]

The ID for the dataset that you want to update. This ID is unique per AWS Region for each AWS account.

type Name

string

param Name

[REQUIRED]

The display name for the dataset.

type PhysicalTableMap

dict

param PhysicalTableMap

[REQUIRED]

Declares the physical tables that are available in the underlying data sources.

  • (string) --

    • (dict) --

      A view of a data source that contains information about the shape of the data in the underlying source. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

      • RelationalTable (dict) --

        A physical table type for relational data sources.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) for the data source.

        • Schema (string) --

          The schema name. This name applies to certain relational database engines.

        • Name (string) -- [REQUIRED]

          The name of the relational table.

        • InputColumns (list) -- [REQUIRED]

          The column schema of the table.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • CustomSql (dict) --

        A physical table type built from the results of the custom SQL query.

        • DataSourceArn (string) -- [REQUIRED]

          The Amazon Resource Name (ARN) of the data source.

        • Name (string) -- [REQUIRED]

          A display name for the SQL query result.

        • SqlQuery (string) -- [REQUIRED]

          The SQL query.

        • Columns (list) --

          The column schema from the SQL query result set.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

      • S3Source (dict) --

        A physical table type for as S3 data source.

        • DataSourceArn (string) -- [REQUIRED]

          The amazon Resource Name (ARN) for the data source.

        • UploadSettings (dict) --

          Information about the format for the S3 source file or files.

          • Format (string) --

            File format.

          • StartFromRow (integer) --

            A row number to start reading data from.

          • ContainsHeader (boolean) --

            Whether the file has a header row, or the files each have a header row.

          • TextQualifier (string) --

            Text qualifier.

          • Delimiter (string) --

            The delimiter between values in the file.

        • InputColumns (list) -- [REQUIRED]

          A physical table type for as S3 data source.

          • (dict) --

            Metadata for a column that is used as the input of a transform operation.

            • Name (string) -- [REQUIRED]

              The name of this column in the underlying data source.

            • Type (string) -- [REQUIRED]

              The data type of the column.

type LogicalTableMap

dict

param LogicalTableMap

Configures the combination and transformation of the data from the physical tables.

  • (string) --

    • (dict) --

      A logical table is a unit that joins and that data transformations operate on. A logical table has a source, which can be either a physical table or result of a join. When a logical table points to a physical table, the logical table acts as a mutable copy of that physical table through transform operations.

      • Alias (string) -- [REQUIRED]

        A display name for the logical table.

      • DataTransforms (list) --

        Transform operations that act on this logical table.

        • (dict) --

          A data transformation on a logical table. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

          • ProjectOperation (dict) --

            An operation that projects columns. Operations that come after a projection can only refer to projected columns.

            • ProjectedColumns (list) -- [REQUIRED]

              Projected columns.

              • (string) --

          • FilterOperation (dict) --

            An operation that filters rows based on some condition.

            • ConditionExpression (string) -- [REQUIRED]

              An expression that must evaluate to a Boolean value. Rows for which the expression evaluates to true are kept in the dataset.

          • CreateColumnsOperation (dict) --

            An operation that creates calculated columns. Columns created in one such operation form a lexical closure.

            • Columns (list) -- [REQUIRED]

              Calculated columns to create.

              • (dict) --

                A calculated column for a dataset.

                • ColumnName (string) -- [REQUIRED]

                  Column name.

                • ColumnId (string) -- [REQUIRED]

                  A unique ID to identify a calculated column. During a dataset update, if the column ID of a calculated column matches that of an existing calculated column, Amazon QuickSight preserves the existing calculated column.

                • Expression (string) -- [REQUIRED]

                  An expression that defines the calculated column.

          • RenameColumnOperation (dict) --

            An operation that renames a column.

            • ColumnName (string) -- [REQUIRED]

              The name of the column to be renamed.

            • NewColumnName (string) -- [REQUIRED]

              The new name for the column.

          • CastColumnTypeOperation (dict) --

            A transform operation that casts a column to a different type.

            • ColumnName (string) -- [REQUIRED]

              Column name.

            • NewColumnType (string) -- [REQUIRED]

              New column data type.

            • Format (string) --

              When casting a column from string to datetime type, you can supply a string in a format supported by Amazon QuickSight to denote the source data format.

          • TagColumnOperation (dict) --

            An operation that tags a column with additional information.

            • ColumnName (string) -- [REQUIRED]

              The column that this operation acts on.

            • Tags (list) -- [REQUIRED]

              The dataset column tag, currently only used for geospatial type tagging. .

              Note

              This is not tags for the AWS tagging feature. .

              • (dict) --

                A tag for a column in a TagColumnOperation structure. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

                • ColumnGeographicRole (string) --

                  A geospatial role for a column.

                • ColumnDescription (dict) --

                  A description for a column.

                  • Text (string) --

                    The text of a description for a column.

      • Source (dict) -- [REQUIRED]

        Source of this logical table.

        • JoinInstruction (dict) --

          Specifies the result of a join of two logical tables.

          • LeftOperand (string) -- [REQUIRED]

            The operand on the left side of a join.

          • RightOperand (string) -- [REQUIRED]

            The operand on the right side of a join.

          • LeftJoinKeyProperties (dict) --

            Join key properties of the left operand.

            • UniqueKey (boolean) --

              Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • RightJoinKeyProperties (dict) --

            Join key properties of the right operand.

            • UniqueKey (boolean) --

              Indicates that a row in a table is uniquely identified by the columns in a join key. This is used by QuickSight to optimize query performance.

          • Type (string) -- [REQUIRED]

            The type of join that it is.

          • OnClause (string) -- [REQUIRED]

            The join instructions provided in the ON clause of a join.

        • PhysicalTableId (string) --

          Physical table ID.

type ImportMode

string

param ImportMode

[REQUIRED]

Indicates whether you want to import the data into SPICE.

type ColumnGroups

list

param ColumnGroups

Groupings of columns that work together in certain QuickSight features. Currently, only geospatial hierarchy is supported.

  • (dict) --

    Groupings of columns that work together in certain Amazon QuickSight features. This is a variant type structure. For this structure to be valid, only one of the attributes can be non-null.

    • GeoSpatialColumnGroup (dict) --

      Geospatial column group that denotes a hierarchy.

      • Name (string) -- [REQUIRED]

        A display name for the hierarchy.

      • CountryCode (string) -- [REQUIRED]

        Country code.

      • Columns (list) -- [REQUIRED]

        Columns in this hierarchy.

        • (string) --

type RowLevelPermissionDataSet

dict

param RowLevelPermissionDataSet

The row-level security configuration for the data you want to create.

  • Namespace (string) --

    The namespace associated with the row-level permissions dataset.

  • Arn (string) -- [REQUIRED]

    The Amazon Resource Name (ARN) of the permission dataset.

  • PermissionPolicy (string) -- [REQUIRED]

    Permission policy.

type ColumnLevelPermissionRules

list

param ColumnLevelPermissionRules

A set of one or more definitions of a `` ColumnLevelPermissionRule `` .

  • (dict) --

    A rule defined to grant access on one or more restricted columns. Each dataset can have multiple rules. To create a restricted column, you add it to one or more rules. Each rule must contain at least one column and at least one user or group. To be able to see a restricted column, a user or group needs to be added to a rule for that column.

    • Principals (list) --

      An array of Amazon Resource Names (ARNs) for QuickSight users or groups.

      • (string) --

    • ColumnNames (list) --

      An array of column names.

      • (string) --

rtype

dict

returns

Response Syntax

{
    'Arn': 'string',
    'DataSetId': 'string',
    'IngestionArn': 'string',
    'IngestionId': 'string',
    'RequestId': 'string',
    'Status': 123
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the dataset.

    • DataSetId (string) --

      The ID for the dataset that you want to create. This ID is unique per AWS Region for each AWS account.

    • IngestionArn (string) --

      The ARN for the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • IngestionId (string) --

      The ID of the ingestion, which is triggered as a result of dataset creation if the import mode is SPICE.

    • RequestId (string) --

      The AWS request ID for this operation.

    • Status (integer) --

      The HTTP status of the request.