interface TableProps
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.S3Tables.Alpha.TableProps |
Java | software.amazon.awscdk.services.s3tables.alpha.TableProps |
Python | aws_cdk.aws_s3tables_alpha.TableProps |
TypeScript (source) | @aws-cdk/aws-s3tables-alpha ยป TableProps |
Properties for creating a new S3 Table.
Example
// Build a table with partition spec (minimal configuration)
const partitionedTable = new Table(scope, 'PartitionedTable', {
tableName: 'partitioned_table',
namespace: namespace,
openTableFormat: OpenTableFormat.ICEBERG,
icebergMetadata: {
icebergSchema: {
schemaFieldList: [
{ name: 'event_date', type: 'date', required: true },
{ name: 'event_name', type: 'string' },
],
},
icebergPartitionSpec: {
fields: [
{
sourceId: 1,
transform: IcebergTransform.IDENTITY,
name: 'date_partition',
},
],
},
},
});
Properties
| Name | Type | Description |
|---|---|---|
| namespace | INamespace | The namespace under which this table is created. |
| open | Open | Format of this table. |
| table | string | Name of this table, unique within the namespace. |
| compaction? | Compaction | Settings governing the Compaction maintenance action. |
| iceberg | Iceberg | Contains details about the metadata for an Iceberg table. |
| removal | Removal | Controls what happens to this table it it stoped being managed by cloudformation. |
| snapshot | Snapshot | Contains details about the snapshot management settings for an Iceberg table. |
| storage | Storage | The storage class for the table. |
| without | boolean | If true, indicates that you don't want to specify a schema for the table. |
namespace
Type:
INamespace
The namespace under which this table is created.
openTableFormat
Type:
Open
Format of this table.
Currently, the only supported value is OpenTableFormat.ICEBERG.
tableName
Type:
string
Name of this table, unique within the namespace.
compaction?
Type:
Compaction
(optional, default: Amazon S3 selects the best compaction strategy based on your table sort order.)
Settings governing the Compaction maintenance action.
icebergMetadata?
Type:
Iceberg
(optional, default: table is created without any metadata)
Contains details about the metadata for an Iceberg table.
removalPolicy?
Type:
Removal
(optional, default: RETAIN)
Controls what happens to this table it it stoped being managed by cloudformation.
snapshotManagement?
Type:
Snapshot
(optional, default: enabled: MinimumSnapshots is 1 by default and MaximumSnapshotAge is 120 hours by default.)
Contains details about the snapshot management settings for an Iceberg table.
storageClass?
Type:
Storage
(optional, default: Inherits from the table bucket's storage class configuration)
The storage class for the table.
Determines the storage tier used for table data, allowing optimization for different access patterns and cost profiles.
Note: This is a create-only property and cannot be changed after the table is created.
withoutMetadata?
Type:
boolean
(optional, default: false)
If true, indicates that you don't want to specify a schema for the table.
This property is mutually exclusive to 'IcebergMetadata'.

.NET
Java
Python
TypeScript (