IcebergMetadataProperty

class aws_cdk.aws_s3tables_alpha.IcebergMetadataProperty(*, iceberg_schema, iceberg_partition_spec=None, iceberg_sort_order=None, table_properties=None)

Bases: object

(experimental) Contains details about the metadata for an Iceberg table.

Parameters:
  • iceberg_schema (Union[IcebergSchemaProperty, Dict[str, Any]]) – (experimental) Contains details about the schema for an Iceberg table.

  • iceberg_partition_spec (Union[IcebergPartitionSpec, Dict[str, Any], None]) – (experimental) The partition specification for the Iceberg table. Default: - No partition specification

  • iceberg_sort_order (Union[IcebergSortOrder, Dict[str, Any], None]) – (experimental) The sort order for the Iceberg table. Default: - No sort order

  • table_properties (Optional[Sequence[Union[TablePropertyEntry, Dict[str, Any]]]]) – (experimental) Custom properties for the Iceberg table. Each entry represents a key-value pair for Iceberg table configuration. Default: - No custom properties

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3tables-table-icebergmetadata.html

Stability:

experimental

ExampleMetadata:

infused

Example:

from aws_cdk.aws_s3tables_alpha import IcebergMetadataProperty, IcebergSchemaProperty, SchemaFieldProperty, SchemaFieldProperty, CompactionProperty, SnapshotManagementProperty
# Build a table
sample_table = Table(scope, "ExampleTable",
    table_name="example_table",
    namespace=namespace,
    open_table_format=OpenTableFormat.ICEBERG,
    without_metadata=True
)

# Build a table with an Iceberg Schema
sample_table_with_schema = Table(scope, "ExampleSchemaTable",
    table_name="example_table_with_schema",
    namespace=namespace,
    open_table_format=OpenTableFormat.ICEBERG,
    iceberg_metadata=IcebergMetadataProperty(
        iceberg_schema=IcebergSchemaProperty(
            schema_field_list=[SchemaFieldProperty(
                name="id",
                type="int",
                required=True
            ), SchemaFieldProperty(
                name="name",
                type="string"
            )
            ]
        )
    ),
    compaction=CompactionProperty(
        status=Status.ENABLED,
        target_file_size_mb=128
    ),
    snapshot_management=SnapshotManagementProperty(
        status=Status.ENABLED,
        max_snapshot_age_hours=48,
        min_snapshots_to_keep=5
    )
)

Attributes

iceberg_partition_spec

(experimental) The partition specification for the Iceberg table.

Default:
  • No partition specification

Stability:

experimental

iceberg_schema

(experimental) Contains details about the schema for an Iceberg table.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3tables-table-icebergmetadata.html#cfn-s3tables-table-icebergmetadata-icebergschema

Stability:

experimental

iceberg_sort_order

(experimental) The sort order for the Iceberg table.

Default:
  • No sort order

Stability:

experimental

table_properties

(experimental) Custom properties for the Iceberg table.

Each entry represents a key-value pair for Iceberg table configuration.

Default:
  • No custom properties

Stability:

experimental