Amazon S3 Tables

2025/01/30 - Amazon S3 Tables - 1 updated api methods

Changes  You can now use the CreateTable API operation to create tables with schemas by adding an optional metadata argument.

CreateTable (updated) Link ΒΆ
Changes (request)
{'metadata': {'iceberg': {'schema': {'fields': [{'name': 'string',
                                                 'required': 'boolean',
                                                 'type': 'string'}]}}}}

Creates a new table associated with the given namespace in a table bucket. For more information, see Creating an Amazon S3 table in the Amazon Simple Storage Service User Guide.

Permissions

You must have the s3tables:CreateTable permission to use this operation.

See also: AWS API Documentation

Request Syntax

client.create_table(
    tableBucketARN='string',
    namespace='string',
    name='string',
    format='ICEBERG',
    metadata={
        'iceberg': {
            'schema': {
                'fields': [
                    {
                        'name': 'string',
                        'type': 'string',
                        'required': True|False
                    },
                ]
            }
        }
    }
)
type tableBucketARN:

string

param tableBucketARN:

[REQUIRED]

The Amazon Resource Name (ARN) of the table bucket to create the table in.

type namespace:

string

param namespace:

[REQUIRED]

The namespace to associated with the table.

type name:

string

param name:

[REQUIRED]

The name for the table.

type format:

string

param format:

[REQUIRED]

The format for the table.

type metadata:

dict

param metadata:

The metadata for the table.

  • iceberg (dict) --

    Contains details about the metadata of an Iceberg table.

    • schema (dict) -- [REQUIRED]

      The schema for an Iceberg table.

      • fields (list) -- [REQUIRED]

        The schema fields for the table

        • (dict) --

          Contains details about a schema field.

          • name (string) -- [REQUIRED]

            The name of the field.

          • type (string) -- [REQUIRED]

            The field type. S3 Tables supports all Apache Iceberg primitive types. For more information, see the Apache Iceberg documentation.

          • required (boolean) --

            A Boolean value that specifies whether values are required for each row in this field. By default, this is false and null values are allowed in the field. If this is true the field does not allow null values.

rtype:

dict

returns:

Response Syntax

{
    'tableARN': 'string',
    'versionToken': 'string'
}

Response Structure

  • (dict) --

    • tableARN (string) --

      The Amazon Resource Name (ARN) of the table.

    • versionToken (string) --

      The version token of the table.