CfnTablePropsMixin
- class aws_cdk.mixins_preview.aws_s3tables.mixins.CfnTablePropsMixin(props, *, strategy=None)
Bases:
MixinCreates 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:CreateTablepermission to use this operation.If you use this operation with the optional
metadatarequest parameter you must have thes3tables:PutTableDatapermission.If you use this operation with the optional
encryptionConfigurationrequest parameter you must have thes3tables:PutTableEncryptionpermission.
Additionally, If you choose SSE-KMS encryption you must grant the S3 Tables maintenance principal access to your KMS key. For more information, see Permissions requirements for S3 Tables SSE-KMS encryption .
Cloud Development Kit - To use S3 Tables AWS CDK constructs, add the
@aws-cdk/aws-s3tables-alphadependency with one of the following options:NPM: `npm i
- See:
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-table.html
- Aws-cdk:
/aws-s3tables-alpha`
Yarn:
yarn add @aws-cdk/aws-s3tables-alpha
- CloudformationResource:
AWS::S3Tables::Table
- Mixin:
true
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview import mixins from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins cfn_table_props_mixin = s3tables_mixins.CfnTablePropsMixin(s3tables_mixins.CfnTableMixinProps( compaction=s3tables_mixins.CfnTablePropsMixin.CompactionProperty( status="status", target_file_size_mb=123 ), iceberg_metadata=s3tables_mixins.CfnTablePropsMixin.IcebergMetadataProperty( iceberg_schema=s3tables_mixins.CfnTablePropsMixin.IcebergSchemaProperty( schema_field_list=[s3tables_mixins.CfnTablePropsMixin.SchemaFieldProperty( name="name", required=False, type="type" )] ) ), namespace="namespace", open_table_format="openTableFormat", snapshot_management=s3tables_mixins.CfnTablePropsMixin.SnapshotManagementProperty( max_snapshot_age_hours=123, min_snapshots_to_keep=123, status="status" ), table_bucket_arn="tableBucketArn", table_name="tableName", tags=[CfnTag( key="key", value="value" )], without_metadata="withoutMetadata" ), strategy=mixins.PropertyMergeStrategy.OVERRIDE )
Create a mixin to apply properties to
AWS::S3Tables::Table.- Parameters:
props (
Union[CfnTableMixinProps,Dict[str,Any]]) – L1 properties to apply.strategy (
Optional[PropertyMergeStrategy]) – (experimental) Strategy for merging nested properties. Default: - PropertyMergeStrategy.MERGE
Methods
- apply_to(construct)
Apply the mixin properties to the construct.
- Parameters:
construct (
IConstruct)- Return type:
- supports(construct)
Check if this mixin supports the given construct.
- Parameters:
construct (
IConstruct)- Return type:
bool
Attributes
- CFN_PROPERTY_KEYS = ['compaction', 'icebergMetadata', 'namespace', 'openTableFormat', 'snapshotManagement', 'tableBucketArn', 'tableName', 'tags', 'withoutMetadata']
Static Methods
- classmethod is_mixin(x)
(experimental) Checks if
xis a Mixin.- Parameters:
x (
Any) – Any object.- Return type:
bool- Returns:
true if
xis an object created from a class which extendsMixin.- Stability:
experimental
CompactionProperty
- class CfnTablePropsMixin.CompactionProperty(*, status=None, target_file_size_mb=None)
Bases:
objectContains details about the compaction settings for an Iceberg table.
- Parameters:
status (
Optional[str]) – The status of the maintenance configuration.target_file_size_mb (
Union[int,float,None]) – The target file size for the table in MB.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins compaction_property = s3tables_mixins.CfnTablePropsMixin.CompactionProperty( status="status", target_file_size_mb=123 )
Attributes
- status
The status of the maintenance configuration.
- target_file_size_mb
The target file size for the table in MB.
IcebergMetadataProperty
- class CfnTablePropsMixin.IcebergMetadataProperty(*, iceberg_schema=None)
Bases:
objectContains details about the metadata for an Iceberg table.
- Parameters:
iceberg_schema (
Union[IResolvable,IcebergSchemaProperty,Dict[str,Any],None]) – The schema for an Iceberg table.- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins iceberg_metadata_property = s3tables_mixins.CfnTablePropsMixin.IcebergMetadataProperty( iceberg_schema=s3tables_mixins.CfnTablePropsMixin.IcebergSchemaProperty( schema_field_list=[s3tables_mixins.CfnTablePropsMixin.SchemaFieldProperty( name="name", required=False, type="type" )] ) )
Attributes
- iceberg_schema
The schema for an Iceberg table.
IcebergSchemaProperty
- class CfnTablePropsMixin.IcebergSchemaProperty(*, schema_field_list=None)
Bases:
objectContains details about the schema for an Iceberg table.
- Parameters:
schema_field_list (
Union[IResolvable,Sequence[Union[IResolvable,SchemaFieldProperty,Dict[str,Any]]],None]) – The schema fields for the table.- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins iceberg_schema_property = s3tables_mixins.CfnTablePropsMixin.IcebergSchemaProperty( schema_field_list=[s3tables_mixins.CfnTablePropsMixin.SchemaFieldProperty( name="name", required=False, type="type" )] )
Attributes
- schema_field_list
The schema fields for the table.
SchemaFieldProperty
- class CfnTablePropsMixin.SchemaFieldProperty(*, name=None, required=None, type=None)
Bases:
objectContains details about a schema field.
- Parameters:
name (
Optional[str]) – The name of the field.required (
Union[bool,IResolvable,None]) – A Boolean value that specifies whether values are required for each row in this field. By default, this isfalseand null values are allowed in the field. If this istruethe field does not allow null values.type (
Optional[str]) – The field type. S3 Tables supports all Apache Iceberg primitive types. For more information, see the Apache Iceberg documentation .
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins schema_field_property = s3tables_mixins.CfnTablePropsMixin.SchemaFieldProperty( name="name", required=False, type="type" )
Attributes
- name
The name of the field.
- required
A Boolean value that specifies whether values are required for each row in this field.
By default, this is
falseand null values are allowed in the field. If this istruethe field does not allow null values.
- type
The field type.
S3 Tables supports all Apache Iceberg primitive types. For more information, see the Apache Iceberg documentation .
SnapshotManagementProperty
- class CfnTablePropsMixin.SnapshotManagementProperty(*, max_snapshot_age_hours=None, min_snapshots_to_keep=None, status=None)
Bases:
objectContains details about the snapshot management settings for an Iceberg table.
The oldest snapshot expires when its age exceeds the
maxSnapshotAgeHoursand the total number of snapshots exceeds the value for the minimum number of snapshots to keepminSnapshotsToKeep.- Parameters:
max_snapshot_age_hours (
Union[int,float,None]) – The maximum age of a snapshot before it can be expired.min_snapshots_to_keep (
Union[int,float,None]) – The minimum number of snapshots to keep.status (
Optional[str]) – The status of the maintenance configuration.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.mixins_preview.aws_s3tables import mixins as s3tables_mixins snapshot_management_property = s3tables_mixins.CfnTablePropsMixin.SnapshotManagementProperty( max_snapshot_age_hours=123, min_snapshots_to_keep=123, status="status" )
Attributes
- max_snapshot_age_hours
The maximum age of a snapshot before it can be expired.
- min_snapshots_to_keep
The minimum number of snapshots to keep.
- status
The status of the maintenance configuration.