AWS Glue

2023/12/22 - AWS Glue - 3 updated api methods

Changes  This release adds additional configurations for Query Session Context on the following APIs: GetUnfilteredTableMetadata, GetUnfilteredPartitionMetadata, GetUnfilteredPartitionsMetadata.

GetUnfilteredPartitionMetadata (updated) Link ¶
Changes (request)
{'QuerySessionContext': {'AdditionalContext': {'string': 'string'},
                         'ClusterId': 'string',
                         'QueryAuthorizationId': 'string',
                         'QueryId': 'string',
                         'QueryStartTime': 'timestamp'},
 'Region': 'string'}

Retrieves partition metadata from the Data Catalog that contains unfiltered metadata.

For IAM authorization, the public IAM action associated with this API is glue:GetPartition.

See also: AWS API Documentation

Request Syntax

client.get_unfiltered_partition_metadata(
    Region='string',
    CatalogId='string',
    DatabaseName='string',
    TableName='string',
    PartitionValues=[
        'string',
    ],
    AuditContext={
        'AdditionalAuditContext': 'string',
        'RequestedColumns': [
            'string',
        ],
        'AllColumnsRequested': True|False
    },
    SupportedPermissionTypes=[
        'COLUMN_PERMISSION'|'CELL_FILTER_PERMISSION'|'NESTED_PERMISSION'|'NESTED_CELL_PERMISSION',
    ],
    QuerySessionContext={
        'QueryId': 'string',
        'QueryStartTime': datetime(2015, 1, 1),
        'ClusterId': 'string',
        'QueryAuthorizationId': 'string',
        'AdditionalContext': {
            'string': 'string'
        }
    }
)
type Region:

string

param Region:

Specified only if the base tables belong to a different Amazon Web Services Region.

type CatalogId:

string

param CatalogId:

[REQUIRED]

The catalog ID where the partition resides.

type DatabaseName:

string

param DatabaseName:

[REQUIRED]

(Required) Specifies the name of a database that contains the partition.

type TableName:

string

param TableName:

[REQUIRED]

(Required) Specifies the name of a table that contains the partition.

type PartitionValues:

list

param PartitionValues:

[REQUIRED]

(Required) A list of partition key values.

  • (string) --

type AuditContext:

dict

param AuditContext:

A structure containing Lake Formation audit context information.

  • AdditionalAuditContext (string) --

    A string containing the additional audit context information.

  • RequestedColumns (list) --

    The requested columns for audit.

    • (string) --

  • AllColumnsRequested (boolean) --

    All columns request for audit.

type SupportedPermissionTypes:

list

param SupportedPermissionTypes:

[REQUIRED]

(Required) A list of supported permission types.

  • (string) --

type QuerySessionContext:

dict

param QuerySessionContext:

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

  • QueryId (string) --

    A unique identifier generated by the query engine for the query.

  • QueryStartTime (datetime) --

    A timestamp provided by the query engine for when the query started.

  • ClusterId (string) --

    An identifier string for the consumer cluster.

  • QueryAuthorizationId (string) --

    A cryptographically generated query identifier generated by Glue or Lake Formation.

  • AdditionalContext (dict) --

    An opaque string-string map passed by the query engine.

    • (string) --

      • (string) --

rtype:

dict

returns:

Response Syntax

{
    'Partition': {
        'Values': [
            'string',
        ],
        'DatabaseName': 'string',
        'TableName': 'string',
        'CreationTime': datetime(2015, 1, 1),
        'LastAccessTime': datetime(2015, 1, 1),
        'StorageDescriptor': {
            'Columns': [
                {
                    'Name': 'string',
                    'Type': 'string',
                    'Comment': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ],
            'Location': 'string',
            'AdditionalLocations': [
                'string',
            ],
            'InputFormat': 'string',
            'OutputFormat': 'string',
            'Compressed': True|False,
            'NumberOfBuckets': 123,
            'SerdeInfo': {
                'Name': 'string',
                'SerializationLibrary': 'string',
                'Parameters': {
                    'string': 'string'
                }
            },
            'BucketColumns': [
                'string',
            ],
            'SortColumns': [
                {
                    'Column': 'string',
                    'SortOrder': 123
                },
            ],
            'Parameters': {
                'string': 'string'
            },
            'SkewedInfo': {
                'SkewedColumnNames': [
                    'string',
                ],
                'SkewedColumnValues': [
                    'string',
                ],
                'SkewedColumnValueLocationMaps': {
                    'string': 'string'
                }
            },
            'StoredAsSubDirectories': True|False,
            'SchemaReference': {
                'SchemaId': {
                    'SchemaArn': 'string',
                    'SchemaName': 'string',
                    'RegistryName': 'string'
                },
                'SchemaVersionId': 'string',
                'SchemaVersionNumber': 123
            }
        },
        'Parameters': {
            'string': 'string'
        },
        'LastAnalyzedTime': datetime(2015, 1, 1),
        'CatalogId': 'string'
    },
    'AuthorizedColumns': [
        'string',
    ],
    'IsRegisteredWithLakeFormation': True|False
}

Response Structure

  • (dict) --

    • Partition (dict) --

      A Partition object containing the partition metadata.

      • Values (list) --

        The values of the partition.

        • (string) --

      • DatabaseName (string) --

        The name of the catalog database in which to create the partition.

      • TableName (string) --

        The name of the database table in which to create the partition.

      • CreationTime (datetime) --

        The time at which the partition was created.

      • LastAccessTime (datetime) --

        The last time at which the partition was accessed.

      • StorageDescriptor (dict) --

        Provides information about the physical location where the partition is stored.

        • Columns (list) --

          A list of the Columns in the table.

          • (dict) --

            A column in a Table.

            • Name (string) --

              The name of the Column.

            • Type (string) --

              The data type of the Column.

            • Comment (string) --

              A free-form text comment.

            • Parameters (dict) --

              These key-value pairs define properties associated with the column.

              • (string) --

                • (string) --

        • Location (string) --

          The physical location of the table. By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name.

        • AdditionalLocations (list) --

          A list of locations that point to the path where a Delta table is located.

          • (string) --

        • InputFormat (string) --

          The input format: SequenceFileInputFormat (binary), or TextInputFormat, or a custom format.

        • OutputFormat (string) --

          The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat, or a custom format.

        • Compressed (boolean) --

          True if the data in the table is compressed, or False if not.

        • NumberOfBuckets (integer) --

          Must be specified if the table contains any dimension columns.

        • SerdeInfo (dict) --

          The serialization/deserialization (SerDe) information.

          • Name (string) --

            Name of the SerDe.

          • SerializationLibrary (string) --

            Usually the class that implements the SerDe. An example is org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe.

          • Parameters (dict) --

            These key-value pairs define initialization parameters for the SerDe.

            • (string) --

              • (string) --

        • BucketColumns (list) --

          A list of reducer grouping columns, clustering columns, and bucketing columns in the table.

          • (string) --

        • SortColumns (list) --

          A list specifying the sort order of each bucket in the table.

          • (dict) --

            Specifies the sort order of a sorted column.

            • Column (string) --

              The name of the column.

            • SortOrder (integer) --

              Indicates that the column is sorted in ascending order ( == 1), or in descending order ( ==0).

        • Parameters (dict) --

          The user-supplied properties in key-value form.

          • (string) --

            • (string) --

        • SkewedInfo (dict) --

          The information about values that appear frequently in a column (skewed values).

          • SkewedColumnNames (list) --

            A list of names of columns that contain skewed values.

            • (string) --

          • SkewedColumnValues (list) --

            A list of values that appear so frequently as to be considered skewed.

            • (string) --

          • SkewedColumnValueLocationMaps (dict) --

            A mapping of skewed values to the columns that contain them.

            • (string) --

              • (string) --

        • StoredAsSubDirectories (boolean) --

          True if the table data is stored in subdirectories, or False if not.

        • SchemaReference (dict) --

          An object that references a schema stored in the Glue Schema Registry.

          When creating a table, you can pass an empty list of columns for the schema, and instead use a schema reference.

          • SchemaId (dict) --

            A structure that contains schema identity fields. Either this or the SchemaVersionId has to be provided.

            • SchemaArn (string) --

              The Amazon Resource Name (ARN) of the schema. One of SchemaArn or SchemaName has to be provided.

            • SchemaName (string) --

              The name of the schema. One of SchemaArn or SchemaName has to be provided.

            • RegistryName (string) --

              The name of the schema registry that contains the schema.

          • SchemaVersionId (string) --

            The unique ID assigned to a version of the schema. Either this or the SchemaId has to be provided.

          • SchemaVersionNumber (integer) --

            The version number of the schema.

      • Parameters (dict) --

        These key-value pairs define partition parameters.

        • (string) --

          • (string) --

      • LastAnalyzedTime (datetime) --

        The last time at which column statistics were computed for this partition.

      • CatalogId (string) --

        The ID of the Data Catalog in which the partition resides.

    • AuthorizedColumns (list) --

      A list of column names that the user has been granted access to.

      • (string) --

    • IsRegisteredWithLakeFormation (boolean) --

      A Boolean value that indicates whether the partition location is registered with Lake Formation.

GetUnfilteredPartitionsMetadata (updated) Link ¶
Changes (request)
{'QuerySessionContext': {'AdditionalContext': {'string': 'string'},
                         'ClusterId': 'string',
                         'QueryAuthorizationId': 'string',
                         'QueryId': 'string',
                         'QueryStartTime': 'timestamp'},
 'Region': 'string'}

Retrieves partition metadata from the Data Catalog that contains unfiltered metadata.

For IAM authorization, the public IAM action associated with this API is glue:GetPartitions.

See also: AWS API Documentation

Request Syntax

client.get_unfiltered_partitions_metadata(
    Region='string',
    CatalogId='string',
    DatabaseName='string',
    TableName='string',
    Expression='string',
    AuditContext={
        'AdditionalAuditContext': 'string',
        'RequestedColumns': [
            'string',
        ],
        'AllColumnsRequested': True|False
    },
    SupportedPermissionTypes=[
        'COLUMN_PERMISSION'|'CELL_FILTER_PERMISSION'|'NESTED_PERMISSION'|'NESTED_CELL_PERMISSION',
    ],
    NextToken='string',
    Segment={
        'SegmentNumber': 123,
        'TotalSegments': 123
    },
    MaxResults=123,
    QuerySessionContext={
        'QueryId': 'string',
        'QueryStartTime': datetime(2015, 1, 1),
        'ClusterId': 'string',
        'QueryAuthorizationId': 'string',
        'AdditionalContext': {
            'string': 'string'
        }
    }
)
type Region:

string

param Region:

Specified only if the base tables belong to a different Amazon Web Services Region.

type CatalogId:

string

param CatalogId:

[REQUIRED]

The ID of the Data Catalog where the partitions in question reside. If none is provided, the AWS account ID is used by default.

type DatabaseName:

string

param DatabaseName:

[REQUIRED]

The name of the catalog database where the partitions reside.

type TableName:

string

param TableName:

[REQUIRED]

The name of the table that contains the partition.

type Expression:

string

param Expression:

An expression that filters the partitions to be returned.

The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.

Operators: The following are the operators that you can use in the Expression API call:

=

Checks whether the values of the two operands are equal; if yes, then the condition becomes true.

Example: Assume 'variable a' holds 10 and 'variable b' holds 20.

(a = b) is not true.

< >

Checks whether the values of two operands are equal; if the values are not equal, then the condition becomes true.

Example: (a < > b) is true.

>

Checks whether the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.

Example: (a > b) is not true.

<

Checks whether the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.

Example: (a < b) is true.

>=

Checks whether the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a >= b) is not true.

<=

Checks whether the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.

Example: (a <= b) is true.

AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL

Logical operators.

Supported Partition Key Types: The following are the supported partition keys.

  • string

  • date

  • timestamp

  • int

  • bigint

  • long

  • tinyint

  • smallint

  • decimal

If an type is encountered that is not valid, an exception is thrown.

type AuditContext:

dict

param AuditContext:

A structure containing Lake Formation audit context information.

  • AdditionalAuditContext (string) --

    A string containing the additional audit context information.

  • RequestedColumns (list) --

    The requested columns for audit.

    • (string) --

  • AllColumnsRequested (boolean) --

    All columns request for audit.

type SupportedPermissionTypes:

list

param SupportedPermissionTypes:

[REQUIRED]

A list of supported permission types.

  • (string) --

type NextToken:

string

param NextToken:

A continuation token, if this is not the first call to retrieve these partitions.

type Segment:

dict

param Segment:

The segment of the table's partitions to scan in this request.

  • SegmentNumber (integer) -- [REQUIRED]

    The zero-based index number of the segment. For example, if the total number of segments is 4, SegmentNumber values range from 0 through 3.

  • TotalSegments (integer) -- [REQUIRED]

    The total number of segments.

type MaxResults:

integer

param MaxResults:

The maximum number of partitions to return in a single response.

type QuerySessionContext:

dict

param QuerySessionContext:

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

  • QueryId (string) --

    A unique identifier generated by the query engine for the query.

  • QueryStartTime (datetime) --

    A timestamp provided by the query engine for when the query started.

  • ClusterId (string) --

    An identifier string for the consumer cluster.

  • QueryAuthorizationId (string) --

    A cryptographically generated query identifier generated by Glue or Lake Formation.

  • AdditionalContext (dict) --

    An opaque string-string map passed by the query engine.

    • (string) --

      • (string) --

rtype:

dict

returns:

Response Syntax

{
    'UnfilteredPartitions': [
        {
            'Partition': {
                'Values': [
                    'string',
                ],
                'DatabaseName': 'string',
                'TableName': 'string',
                'CreationTime': datetime(2015, 1, 1),
                'LastAccessTime': datetime(2015, 1, 1),
                'StorageDescriptor': {
                    'Columns': [
                        {
                            'Name': 'string',
                            'Type': 'string',
                            'Comment': 'string',
                            'Parameters': {
                                'string': 'string'
                            }
                        },
                    ],
                    'Location': 'string',
                    'AdditionalLocations': [
                        'string',
                    ],
                    'InputFormat': 'string',
                    'OutputFormat': 'string',
                    'Compressed': True|False,
                    'NumberOfBuckets': 123,
                    'SerdeInfo': {
                        'Name': 'string',
                        'SerializationLibrary': 'string',
                        'Parameters': {
                            'string': 'string'
                        }
                    },
                    'BucketColumns': [
                        'string',
                    ],
                    'SortColumns': [
                        {
                            'Column': 'string',
                            'SortOrder': 123
                        },
                    ],
                    'Parameters': {
                        'string': 'string'
                    },
                    'SkewedInfo': {
                        'SkewedColumnNames': [
                            'string',
                        ],
                        'SkewedColumnValues': [
                            'string',
                        ],
                        'SkewedColumnValueLocationMaps': {
                            'string': 'string'
                        }
                    },
                    'StoredAsSubDirectories': True|False,
                    'SchemaReference': {
                        'SchemaId': {
                            'SchemaArn': 'string',
                            'SchemaName': 'string',
                            'RegistryName': 'string'
                        },
                        'SchemaVersionId': 'string',
                        'SchemaVersionNumber': 123
                    }
                },
                'Parameters': {
                    'string': 'string'
                },
                'LastAnalyzedTime': datetime(2015, 1, 1),
                'CatalogId': 'string'
            },
            'AuthorizedColumns': [
                'string',
            ],
            'IsRegisteredWithLakeFormation': True|False
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • UnfilteredPartitions (list) --

      A list of requested partitions.

      • (dict) --

        A partition that contains unfiltered metadata.

        • Partition (dict) --

          The partition object.

          • Values (list) --

            The values of the partition.

            • (string) --

          • DatabaseName (string) --

            The name of the catalog database in which to create the partition.

          • TableName (string) --

            The name of the database table in which to create the partition.

          • CreationTime (datetime) --

            The time at which the partition was created.

          • LastAccessTime (datetime) --

            The last time at which the partition was accessed.

          • StorageDescriptor (dict) --

            Provides information about the physical location where the partition is stored.

            • Columns (list) --

              A list of the Columns in the table.

              • (dict) --

                A column in a Table.

                • Name (string) --

                  The name of the Column.

                • Type (string) --

                  The data type of the Column.

                • Comment (string) --

                  A free-form text comment.

                • Parameters (dict) --

                  These key-value pairs define properties associated with the column.

                  • (string) --

                    • (string) --

            • Location (string) --

              The physical location of the table. By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name.

            • AdditionalLocations (list) --

              A list of locations that point to the path where a Delta table is located.

              • (string) --

            • InputFormat (string) --

              The input format: SequenceFileInputFormat (binary), or TextInputFormat, or a custom format.

            • OutputFormat (string) --

              The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat, or a custom format.

            • Compressed (boolean) --

              True if the data in the table is compressed, or False if not.

            • NumberOfBuckets (integer) --

              Must be specified if the table contains any dimension columns.

            • SerdeInfo (dict) --

              The serialization/deserialization (SerDe) information.

              • Name (string) --

                Name of the SerDe.

              • SerializationLibrary (string) --

                Usually the class that implements the SerDe. An example is org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe.

              • Parameters (dict) --

                These key-value pairs define initialization parameters for the SerDe.

                • (string) --

                  • (string) --

            • BucketColumns (list) --

              A list of reducer grouping columns, clustering columns, and bucketing columns in the table.

              • (string) --

            • SortColumns (list) --

              A list specifying the sort order of each bucket in the table.

              • (dict) --

                Specifies the sort order of a sorted column.

                • Column (string) --

                  The name of the column.

                • SortOrder (integer) --

                  Indicates that the column is sorted in ascending order ( == 1), or in descending order ( ==0).

            • Parameters (dict) --

              The user-supplied properties in key-value form.

              • (string) --

                • (string) --

            • SkewedInfo (dict) --

              The information about values that appear frequently in a column (skewed values).

              • SkewedColumnNames (list) --

                A list of names of columns that contain skewed values.

                • (string) --

              • SkewedColumnValues (list) --

                A list of values that appear so frequently as to be considered skewed.

                • (string) --

              • SkewedColumnValueLocationMaps (dict) --

                A mapping of skewed values to the columns that contain them.

                • (string) --

                  • (string) --

            • StoredAsSubDirectories (boolean) --

              True if the table data is stored in subdirectories, or False if not.

            • SchemaReference (dict) --

              An object that references a schema stored in the Glue Schema Registry.

              When creating a table, you can pass an empty list of columns for the schema, and instead use a schema reference.

              • SchemaId (dict) --

                A structure that contains schema identity fields. Either this or the SchemaVersionId has to be provided.

                • SchemaArn (string) --

                  The Amazon Resource Name (ARN) of the schema. One of SchemaArn or SchemaName has to be provided.

                • SchemaName (string) --

                  The name of the schema. One of SchemaArn or SchemaName has to be provided.

                • RegistryName (string) --

                  The name of the schema registry that contains the schema.

              • SchemaVersionId (string) --

                The unique ID assigned to a version of the schema. Either this or the SchemaId has to be provided.

              • SchemaVersionNumber (integer) --

                The version number of the schema.

          • Parameters (dict) --

            These key-value pairs define partition parameters.

            • (string) --

              • (string) --

          • LastAnalyzedTime (datetime) --

            The last time at which column statistics were computed for this partition.

          • CatalogId (string) --

            The ID of the Data Catalog in which the partition resides.

        • AuthorizedColumns (list) --

          The list of columns the user has permissions to access.

          • (string) --

        • IsRegisteredWithLakeFormation (boolean) --

          A Boolean value indicating that the partition location is registered with Lake Formation.

    • NextToken (string) --

      A continuation token, if the returned list of partitions does not include the last one.

GetUnfilteredTableMetadata (updated) Link ¶
Changes (request, response)
Request
{'Permissions': ['ALL | SELECT | ALTER | DROP | DELETE | INSERT | '
                 'CREATE_DATABASE | CREATE_TABLE | DATA_LOCATION_ACCESS'],
 'QuerySessionContext': {'AdditionalContext': {'string': 'string'},
                         'ClusterId': 'string',
                         'QueryAuthorizationId': 'string',
                         'QueryId': 'string',
                         'QueryStartTime': 'timestamp'},
 'Region': 'string',
 'SupportedDialect': {'Dialect': 'REDSHIFT | ATHENA | SPARK',
                      'DialectVersion': 'string'}}
Response
{'Permissions': ['ALL | SELECT | ALTER | DROP | DELETE | INSERT | '
                 'CREATE_DATABASE | CREATE_TABLE | DATA_LOCATION_ACCESS'],
 'QueryAuthorizationId': 'string',
 'ResourceArn': 'string'}

Retrieves table metadata from the Data Catalog that contains unfiltered metadata.

For IAM authorization, the public IAM action associated with this API is glue:GetTable.

See also: AWS API Documentation

Request Syntax

client.get_unfiltered_table_metadata(
    Region='string',
    CatalogId='string',
    DatabaseName='string',
    Name='string',
    AuditContext={
        'AdditionalAuditContext': 'string',
        'RequestedColumns': [
            'string',
        ],
        'AllColumnsRequested': True|False
    },
    SupportedPermissionTypes=[
        'COLUMN_PERMISSION'|'CELL_FILTER_PERMISSION'|'NESTED_PERMISSION'|'NESTED_CELL_PERMISSION',
    ],
    SupportedDialect={
        'Dialect': 'REDSHIFT'|'ATHENA'|'SPARK',
        'DialectVersion': 'string'
    },
    Permissions=[
        'ALL'|'SELECT'|'ALTER'|'DROP'|'DELETE'|'INSERT'|'CREATE_DATABASE'|'CREATE_TABLE'|'DATA_LOCATION_ACCESS',
    ],
    QuerySessionContext={
        'QueryId': 'string',
        'QueryStartTime': datetime(2015, 1, 1),
        'ClusterId': 'string',
        'QueryAuthorizationId': 'string',
        'AdditionalContext': {
            'string': 'string'
        }
    }
)
type Region:

string

param Region:

Specified only if the base tables belong to a different Amazon Web Services Region.

type CatalogId:

string

param CatalogId:

[REQUIRED]

The catalog ID where the table resides.

type DatabaseName:

string

param DatabaseName:

[REQUIRED]

(Required) Specifies the name of a database that contains the table.

type Name:

string

param Name:

[REQUIRED]

(Required) Specifies the name of a table for which you are requesting metadata.

type AuditContext:

dict

param AuditContext:

A structure containing Lake Formation audit context information.

  • AdditionalAuditContext (string) --

    A string containing the additional audit context information.

  • RequestedColumns (list) --

    The requested columns for audit.

    • (string) --

  • AllColumnsRequested (boolean) --

    All columns request for audit.

type SupportedPermissionTypes:

list

param SupportedPermissionTypes:

[REQUIRED]

(Required) A list of supported permission types.

  • (string) --

type SupportedDialect:

dict

param SupportedDialect:

A structure specifying the dialect and dialect version used by the query engine.

  • Dialect (string) --

    The dialect of the query engine.

  • DialectVersion (string) --

    The version of the dialect of the query engine. For example, 3.0.0.

type Permissions:

list

param Permissions:

The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

  • (string) --

type QuerySessionContext:

dict

param QuerySessionContext:

A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

  • QueryId (string) --

    A unique identifier generated by the query engine for the query.

  • QueryStartTime (datetime) --

    A timestamp provided by the query engine for when the query started.

  • ClusterId (string) --

    An identifier string for the consumer cluster.

  • QueryAuthorizationId (string) --

    A cryptographically generated query identifier generated by Glue or Lake Formation.

  • AdditionalContext (dict) --

    An opaque string-string map passed by the query engine.

    • (string) --

      • (string) --

rtype:

dict

returns:

Response Syntax

{
    'Table': {
        'Name': 'string',
        'DatabaseName': 'string',
        'Description': 'string',
        'Owner': 'string',
        'CreateTime': datetime(2015, 1, 1),
        'UpdateTime': datetime(2015, 1, 1),
        'LastAccessTime': datetime(2015, 1, 1),
        'LastAnalyzedTime': datetime(2015, 1, 1),
        'Retention': 123,
        'StorageDescriptor': {
            'Columns': [
                {
                    'Name': 'string',
                    'Type': 'string',
                    'Comment': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ],
            'Location': 'string',
            'AdditionalLocations': [
                'string',
            ],
            'InputFormat': 'string',
            'OutputFormat': 'string',
            'Compressed': True|False,
            'NumberOfBuckets': 123,
            'SerdeInfo': {
                'Name': 'string',
                'SerializationLibrary': 'string',
                'Parameters': {
                    'string': 'string'
                }
            },
            'BucketColumns': [
                'string',
            ],
            'SortColumns': [
                {
                    'Column': 'string',
                    'SortOrder': 123
                },
            ],
            'Parameters': {
                'string': 'string'
            },
            'SkewedInfo': {
                'SkewedColumnNames': [
                    'string',
                ],
                'SkewedColumnValues': [
                    'string',
                ],
                'SkewedColumnValueLocationMaps': {
                    'string': 'string'
                }
            },
            'StoredAsSubDirectories': True|False,
            'SchemaReference': {
                'SchemaId': {
                    'SchemaArn': 'string',
                    'SchemaName': 'string',
                    'RegistryName': 'string'
                },
                'SchemaVersionId': 'string',
                'SchemaVersionNumber': 123
            }
        },
        'PartitionKeys': [
            {
                'Name': 'string',
                'Type': 'string',
                'Comment': 'string',
                'Parameters': {
                    'string': 'string'
                }
            },
        ],
        'ViewOriginalText': 'string',
        'ViewExpandedText': 'string',
        'TableType': 'string',
        'Parameters': {
            'string': 'string'
        },
        'CreatedBy': 'string',
        'IsRegisteredWithLakeFormation': True|False,
        'TargetTable': {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'Name': 'string',
            'Region': 'string'
        },
        'CatalogId': 'string',
        'VersionId': 'string',
        'FederatedTable': {
            'Identifier': 'string',
            'DatabaseIdentifier': 'string',
            'ConnectionName': 'string'
        }
    },
    'AuthorizedColumns': [
        'string',
    ],
    'IsRegisteredWithLakeFormation': True|False,
    'CellFilters': [
        {
            'ColumnName': 'string',
            'RowFilterExpression': 'string'
        },
    ],
    'QueryAuthorizationId': 'string',
    'ResourceArn': 'string',
    'Permissions': [
        'ALL'|'SELECT'|'ALTER'|'DROP'|'DELETE'|'INSERT'|'CREATE_DATABASE'|'CREATE_TABLE'|'DATA_LOCATION_ACCESS',
    ]
}

Response Structure

  • (dict) --

    • Table (dict) --

      A Table object containing the table metadata.

      • Name (string) --

        The table name. For Hive compatibility, this must be entirely lowercase.

      • DatabaseName (string) --

        The name of the database where the table metadata resides. For Hive compatibility, this must be all lowercase.

      • Description (string) --

        A description of the table.

      • Owner (string) --

        The owner of the table.

      • CreateTime (datetime) --

        The time when the table definition was created in the Data Catalog.

      • UpdateTime (datetime) --

        The last time that the table was updated.

      • LastAccessTime (datetime) --

        The last time that the table was accessed. This is usually taken from HDFS, and might not be reliable.

      • LastAnalyzedTime (datetime) --

        The last time that column statistics were computed for this table.

      • Retention (integer) --

        The retention time for this table.

      • StorageDescriptor (dict) --

        A storage descriptor containing information about the physical storage of this table.

        • Columns (list) --

          A list of the Columns in the table.

          • (dict) --

            A column in a Table.

            • Name (string) --

              The name of the Column.

            • Type (string) --

              The data type of the Column.

            • Comment (string) --

              A free-form text comment.

            • Parameters (dict) --

              These key-value pairs define properties associated with the column.

              • (string) --

                • (string) --

        • Location (string) --

          The physical location of the table. By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name.

        • AdditionalLocations (list) --

          A list of locations that point to the path where a Delta table is located.

          • (string) --

        • InputFormat (string) --

          The input format: SequenceFileInputFormat (binary), or TextInputFormat, or a custom format.

        • OutputFormat (string) --

          The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat, or a custom format.

        • Compressed (boolean) --

          True if the data in the table is compressed, or False if not.

        • NumberOfBuckets (integer) --

          Must be specified if the table contains any dimension columns.

        • SerdeInfo (dict) --

          The serialization/deserialization (SerDe) information.

          • Name (string) --

            Name of the SerDe.

          • SerializationLibrary (string) --

            Usually the class that implements the SerDe. An example is org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe.

          • Parameters (dict) --

            These key-value pairs define initialization parameters for the SerDe.

            • (string) --

              • (string) --

        • BucketColumns (list) --

          A list of reducer grouping columns, clustering columns, and bucketing columns in the table.

          • (string) --

        • SortColumns (list) --

          A list specifying the sort order of each bucket in the table.

          • (dict) --

            Specifies the sort order of a sorted column.

            • Column (string) --

              The name of the column.

            • SortOrder (integer) --

              Indicates that the column is sorted in ascending order ( == 1), or in descending order ( ==0).

        • Parameters (dict) --

          The user-supplied properties in key-value form.

          • (string) --

            • (string) --

        • SkewedInfo (dict) --

          The information about values that appear frequently in a column (skewed values).

          • SkewedColumnNames (list) --

            A list of names of columns that contain skewed values.

            • (string) --

          • SkewedColumnValues (list) --

            A list of values that appear so frequently as to be considered skewed.

            • (string) --

          • SkewedColumnValueLocationMaps (dict) --

            A mapping of skewed values to the columns that contain them.

            • (string) --

              • (string) --

        • StoredAsSubDirectories (boolean) --

          True if the table data is stored in subdirectories, or False if not.

        • SchemaReference (dict) --

          An object that references a schema stored in the Glue Schema Registry.

          When creating a table, you can pass an empty list of columns for the schema, and instead use a schema reference.

          • SchemaId (dict) --

            A structure that contains schema identity fields. Either this or the SchemaVersionId has to be provided.

            • SchemaArn (string) --

              The Amazon Resource Name (ARN) of the schema. One of SchemaArn or SchemaName has to be provided.

            • SchemaName (string) --

              The name of the schema. One of SchemaArn or SchemaName has to be provided.

            • RegistryName (string) --

              The name of the schema registry that contains the schema.

          • SchemaVersionId (string) --

            The unique ID assigned to a version of the schema. Either this or the SchemaId has to be provided.

          • SchemaVersionNumber (integer) --

            The version number of the schema.

      • PartitionKeys (list) --

        A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

        When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

        "PartitionKeys": []

        • (dict) --

          A column in a Table.

          • Name (string) --

            The name of the Column.

          • Type (string) --

            The data type of the Column.

          • Comment (string) --

            A free-form text comment.

          • Parameters (dict) --

            These key-value pairs define properties associated with the column.

            • (string) --

              • (string) --

      • ViewOriginalText (string) --

        Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

      • ViewExpandedText (string) --

        Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

      • TableType (string) --

        The type of this table. Glue will create tables with the EXTERNAL_TABLE type. Other services, such as Athena, may create tables with additional table types.

        Glue related table types:

        EXTERNAL_TABLE

        Hive compatible attribute - indicates a non-Hive managed table.

        GOVERNED

        Used by Lake Formation. The Glue Data Catalog understands GOVERNED.

      • Parameters (dict) --

        These key-value pairs define properties associated with the table.

        • (string) --

          • (string) --

      • CreatedBy (string) --

        The person or entity who created the table.

      • IsRegisteredWithLakeFormation (boolean) --

        Indicates whether the table has been registered with Lake Formation.

      • TargetTable (dict) --

        A TableIdentifier structure that describes a target table for resource linking.

        • CatalogId (string) --

          The ID of the Data Catalog in which the table resides.

        • DatabaseName (string) --

          The name of the catalog database that contains the target table.

        • Name (string) --

          The name of the target table.

        • Region (string) --

          Region of the target table.

      • CatalogId (string) --

        The ID of the Data Catalog in which the table resides.

      • VersionId (string) --

        The ID of the table version.

      • FederatedTable (dict) --

        A FederatedTable structure that references an entity outside the Glue Data Catalog.

        • Identifier (string) --

          A unique identifier for the federated table.

        • DatabaseIdentifier (string) --

          A unique identifier for the federated database.

        • ConnectionName (string) --

          The name of the connection to the external metastore.

    • AuthorizedColumns (list) --

      A list of column names that the user has been granted access to.

      • (string) --

    • IsRegisteredWithLakeFormation (boolean) --

      A Boolean value that indicates whether the partition location is registered with Lake Formation.

    • CellFilters (list) --

      A list of column row filters.

      • (dict) --

        A filter that uses both column-level and row-level filtering.

        • ColumnName (string) --

          A string containing the name of the column.

        • RowFilterExpression (string) --

          A string containing the row-level filter expression.

    • QueryAuthorizationId (string) --

      A cryptographically generated query identifier generated by Glue or Lake Formation.

    • ResourceArn (string) --

      The resource ARN of the parent resource extracted from the request.

    • Permissions (list) --

      The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

      • (string) --