Class IcebergSchemaProperty
(experimental) Contains details about the schema for an Iceberg table.
Implements
Inherited Members
Namespace: Amazon.CDK.AWS.S3Tables.Alpha
Assembly: Amazon.CDK.AWS.S3Tables.Alpha.dll
Syntax (csharp)
public class IcebergSchemaProperty : IIcebergSchemaProperty
Syntax (vb)
Public Class IcebergSchemaProperty Implements IIcebergSchemaProperty
Remarks
Stability: Experimental
ExampleMetadata: infused
Examples
// Build a table
var sampleTable = new Table(scope, "ExampleTable", new TableProps {
TableName = "example_table",
Namespace = namespace,
OpenTableFormat = OpenTableFormat.ICEBERG,
WithoutMetadata = true
});
// Build a table with an Iceberg Schema
var sampleTableWithSchema = new Table(scope, "ExampleSchemaTable", new TableProps {
TableName = "example_table_with_schema",
Namespace = namespace,
OpenTableFormat = OpenTableFormat.ICEBERG,
IcebergMetadata = new IcebergMetadataProperty {
IcebergSchema = new IcebergSchemaProperty {
SchemaFieldList = new [] { new SchemaFieldProperty {
Name = "id",
Type = "int",
Required = true
}, new SchemaFieldProperty {
Name = "name",
Type = "string"
} }
}
},
Compaction = new CompactionProperty {
Status = Status.ENABLED,
TargetFileSizeMb = 128
},
SnapshotManagement = new SnapshotManagementProperty {
Status = Status.ENABLED,
MaxSnapshotAgeHours = 48,
MinSnapshotsToKeep = 5
}
});
Synopsis
Constructors
IcebergSchemaProperty() | (experimental) Contains details about the schema for an Iceberg table. |
Properties
SchemaFieldList | (experimental) Contains details about the schema for an Iceberg table. |
Constructors
IcebergSchemaProperty()
(experimental) Contains details about the schema for an Iceberg table.
public IcebergSchemaProperty()
Remarks
Stability: Experimental
ExampleMetadata: infused
Examples
// Build a table
var sampleTable = new Table(scope, "ExampleTable", new TableProps {
TableName = "example_table",
Namespace = namespace,
OpenTableFormat = OpenTableFormat.ICEBERG,
WithoutMetadata = true
});
// Build a table with an Iceberg Schema
var sampleTableWithSchema = new Table(scope, "ExampleSchemaTable", new TableProps {
TableName = "example_table_with_schema",
Namespace = namespace,
OpenTableFormat = OpenTableFormat.ICEBERG,
IcebergMetadata = new IcebergMetadataProperty {
IcebergSchema = new IcebergSchemaProperty {
SchemaFieldList = new [] { new SchemaFieldProperty {
Name = "id",
Type = "int",
Required = true
}, new SchemaFieldProperty {
Name = "name",
Type = "string"
} }
}
},
Compaction = new CompactionProperty {
Status = Status.ENABLED,
TargetFileSizeMb = 128
},
SnapshotManagement = new SnapshotManagementProperty {
Status = Status.ENABLED,
MaxSnapshotAgeHours = 48,
MinSnapshotsToKeep = 5
}
});
Properties
SchemaFieldList
(experimental) Contains details about the schema for an Iceberg table.
public ISchemaFieldProperty[] SchemaFieldList { get; set; }
Property Value
Remarks
Stability: Experimental