CfnTableOptimizerPropsMixin

class aws_cdk.mixins_preview.aws_glue.mixins.CfnTableOptimizerPropsMixin(props, *, strategy=None)

Bases: Mixin

An AWS Glue resource for enabling table optimizers to improve read performance for open table formats.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-tableoptimizer.html

CloudformationResource:

AWS::Glue::TableOptimizer

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_glue import mixins as glue_mixins

cfn_table_optimizer_props_mixin = glue_mixins.CfnTableOptimizerPropsMixin(glue_mixins.CfnTableOptimizerMixinProps(
    catalog_id="catalogId",
    database_name="databaseName",
    table_name="tableName",
    table_optimizer_configuration=glue_mixins.CfnTableOptimizerPropsMixin.TableOptimizerConfigurationProperty(
        enabled=False,
        orphan_file_deletion_configuration=glue_mixins.CfnTableOptimizerPropsMixin.OrphanFileDeletionConfigurationProperty(
            iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergConfigurationProperty(
                location="location",
                orphan_file_retention_period_in_days=123
            )
        ),
        retention_configuration=glue_mixins.CfnTableOptimizerPropsMixin.RetentionConfigurationProperty(
            iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergRetentionConfigurationProperty(
                clean_expired_files=False,
                number_of_snapshots_to_retain=123,
                snapshot_retention_period_in_days=123
            )
        ),
        role_arn="roleArn",
        vpc_configuration=glue_mixins.CfnTableOptimizerPropsMixin.VpcConfigurationProperty(
            glue_connection_name="glueConnectionName"
        )
    ),
    type="type"
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::Glue::TableOptimizer.

Parameters:

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['catalogId', 'databaseName', 'tableName', 'tableOptimizerConfiguration', 'type']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

IcebergConfigurationProperty

class CfnTableOptimizerPropsMixin.IcebergConfigurationProperty(*, location=None, orphan_file_retention_period_in_days=None)

Bases: object

IcebergConfiguration is a property type within the AWS::Glue::TableOptimizer resource in AWS CloudFormation.

This configuration is used when setting up table optimization for Iceberg tables in AWS Glue .

Parameters:
  • location (Optional[str]) – Specifies a directory in which to look for orphan files (defaults to the table’s location). You may choose a sub-directory rather than the top-level table location.

  • orphan_file_retention_period_in_days (Union[int, float, None]) – The specific number of days you want to keep the orphan files.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergconfiguration.html

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_glue import mixins as glue_mixins

iceberg_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.IcebergConfigurationProperty(
    location="location",
    orphan_file_retention_period_in_days=123
)

Attributes

location

Specifies a directory in which to look for orphan files (defaults to the table’s location).

You may choose a sub-directory rather than the top-level table location.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergconfiguration.html#cfn-glue-tableoptimizer-icebergconfiguration-location

orphan_file_retention_period_in_days

The specific number of days you want to keep the orphan files.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergconfiguration.html#cfn-glue-tableoptimizer-icebergconfiguration-orphanfileretentionperiodindays

IcebergRetentionConfigurationProperty

class CfnTableOptimizerPropsMixin.IcebergRetentionConfigurationProperty(*, clean_expired_files=None, number_of_snapshots_to_retain=None, snapshot_retention_period_in_days=None)

Bases: object

Parameters:
  • clean_expired_files (Union[bool, IResolvable, None])

  • number_of_snapshots_to_retain (Union[int, float, None])

  • snapshot_retention_period_in_days (Union[int, float, None])

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html

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_glue import mixins as glue_mixins

iceberg_retention_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.IcebergRetentionConfigurationProperty(
    clean_expired_files=False,
    number_of_snapshots_to_retain=123,
    snapshot_retention_period_in_days=123
)

Attributes

clean_expired_files

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-cleanexpiredfiles

Type:

see

number_of_snapshots_to_retain

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-numberofsnapshotstoretain

Type:

see

snapshot_retention_period_in_days

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-snapshotretentionperiodindays

Type:

see

OrphanFileDeletionConfigurationProperty

class CfnTableOptimizerPropsMixin.OrphanFileDeletionConfigurationProperty(*, iceberg_configuration=None)

Bases: object

Configuration for removing files that are are not tracked by the Iceberg table metadata, and are older than your configured age limit.

This configuration helps optimize storage usage and costs by automatically cleaning up files that are no longer needed by the table.

Parameters:

iceberg_configuration (Union[IResolvable, IcebergConfigurationProperty, Dict[str, Any], None]) – The IcebergConfiguration property helps optimize your Iceberg tables in AWS Glue by allowing you to specify format-specific settings that control how data is stored, compressed, and managed.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-orphanfiledeletionconfiguration.html

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_glue import mixins as glue_mixins

orphan_file_deletion_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.OrphanFileDeletionConfigurationProperty(
    iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergConfigurationProperty(
        location="location",
        orphan_file_retention_period_in_days=123
    )
)

Attributes

iceberg_configuration

The IcebergConfiguration property helps optimize your Iceberg tables in AWS Glue by allowing you to specify format-specific settings that control how data is stored, compressed, and managed.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-orphanfiledeletionconfiguration.html#cfn-glue-tableoptimizer-orphanfiledeletionconfiguration-icebergconfiguration

RetentionConfigurationProperty

class CfnTableOptimizerPropsMixin.RetentionConfigurationProperty(*, iceberg_configuration=None)

Bases: object

The configuration for a snapshot retention optimizer for Apache Iceberg tables.

Parameters:

iceberg_configuration (Union[IResolvable, IcebergRetentionConfigurationProperty, Dict[str, Any], None]) – The configuration for an Iceberg snapshot retention optimizer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-retentionconfiguration.html

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_glue import mixins as glue_mixins

retention_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.RetentionConfigurationProperty(
    iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergRetentionConfigurationProperty(
        clean_expired_files=False,
        number_of_snapshots_to_retain=123,
        snapshot_retention_period_in_days=123
    )
)

Attributes

iceberg_configuration

The configuration for an Iceberg snapshot retention optimizer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-retentionconfiguration.html#cfn-glue-tableoptimizer-retentionconfiguration-icebergconfiguration

TableOptimizerConfigurationProperty

class CfnTableOptimizerPropsMixin.TableOptimizerConfigurationProperty(*, enabled=None, orphan_file_deletion_configuration=None, retention_configuration=None, role_arn=None, vpc_configuration=None)

Bases: object

Specifies configuration details of a table optimizer.

Parameters:
  • enabled (Union[bool, IResolvable, None]) – Whether the table optimization is enabled.

  • orphan_file_deletion_configuration (Union[IResolvable, OrphanFileDeletionConfigurationProperty, Dict[str, Any], None]) – OrphanFileDeletionConfiguration is a property that can be included within the TableOptimizer resource. It controls the automatic deletion of orphaned files - files that are not tracked by the table metadata, and older than the configured age limit.

  • retention_configuration (Union[IResolvable, RetentionConfigurationProperty, Dict[str, Any], None]) – The configuration for a snapshot retention optimizer for Apache Iceberg tables.

  • role_arn (Optional[str]) – A role passed by the caller which gives the service permission to update the resources associated with the optimizer on the caller’s behalf.

  • vpc_configuration (Union[IResolvable, VpcConfigurationProperty, Dict[str, Any], None]) – An object that describes the VPC configuration for a table optimizer. This configuration is necessary to perform optimization on tables that are in a customer VPC.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html

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_glue import mixins as glue_mixins

table_optimizer_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.TableOptimizerConfigurationProperty(
    enabled=False,
    orphan_file_deletion_configuration=glue_mixins.CfnTableOptimizerPropsMixin.OrphanFileDeletionConfigurationProperty(
        iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergConfigurationProperty(
            location="location",
            orphan_file_retention_period_in_days=123
        )
    ),
    retention_configuration=glue_mixins.CfnTableOptimizerPropsMixin.RetentionConfigurationProperty(
        iceberg_configuration=glue_mixins.CfnTableOptimizerPropsMixin.IcebergRetentionConfigurationProperty(
            clean_expired_files=False,
            number_of_snapshots_to_retain=123,
            snapshot_retention_period_in_days=123
        )
    ),
    role_arn="roleArn",
    vpc_configuration=glue_mixins.CfnTableOptimizerPropsMixin.VpcConfigurationProperty(
        glue_connection_name="glueConnectionName"
    )
)

Attributes

enabled

Whether the table optimization is enabled.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html#cfn-glue-tableoptimizer-tableoptimizerconfiguration-enabled

orphan_file_deletion_configuration

OrphanFileDeletionConfiguration is a property that can be included within the TableOptimizer resource.

It controls the automatic deletion of orphaned files - files that are not tracked by the table metadata, and older than the configured age limit.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html#cfn-glue-tableoptimizer-tableoptimizerconfiguration-orphanfiledeletionconfiguration

retention_configuration

The configuration for a snapshot retention optimizer for Apache Iceberg tables.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html#cfn-glue-tableoptimizer-tableoptimizerconfiguration-retentionconfiguration

role_arn

A role passed by the caller which gives the service permission to update the resources associated with the optimizer on the caller’s behalf.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html#cfn-glue-tableoptimizer-tableoptimizerconfiguration-rolearn

vpc_configuration

An object that describes the VPC configuration for a table optimizer.

This configuration is necessary to perform optimization on tables that are in a customer VPC.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-tableoptimizerconfiguration.html#cfn-glue-tableoptimizer-tableoptimizerconfiguration-vpcconfiguration

VpcConfigurationProperty

class CfnTableOptimizerPropsMixin.VpcConfigurationProperty(*, glue_connection_name=None)

Bases: object

An object that describes the VPC configuration for a table optimizer.

This configuration is necessary to perform optimization on tables that are in a customer VPC.

Parameters:

glue_connection_name (Optional[str]) – The name of the AWS Glue connection used for the VPC for the table optimizer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-vpcconfiguration.html

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_glue import mixins as glue_mixins

vpc_configuration_property = glue_mixins.CfnTableOptimizerPropsMixin.VpcConfigurationProperty(
    glue_connection_name="glueConnectionName"
)

Attributes

glue_connection_name

The name of the AWS Glue connection used for the VPC for the table optimizer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-vpcconfiguration.html#cfn-glue-tableoptimizer-vpcconfiguration-glueconnectionname