PartitionProjectionConfiguration
- class aws_cdk.aws_glue.PartitionProjectionConfiguration(*args: Any, **kwargs)
Bases:
objectFactory class for creating partition projection configurations.
- ExampleMetadata:
infused
Example:
# my_database: glue.Database glue.S3Table(self, "MyTable", database=my_database, columns=[glue.Column( name="data", type=glue.Schema.STRING )], partition_keys=[glue.Column( name="date", type=glue.Schema.STRING )], data_format=glue.DataFormat.JSON, partition_projection={ "date": glue.PartitionProjectionConfiguration.date( min="2020-01-01", max="2023-12-31", format="yyyy-MM-dd", # `step` bundles interval + unit (supply both or neither). Optional at day # precision or coarser; required when the format is sub-day (e.g. hours). step=glue.DateProjectionStep(interval=1, interval_unit=glue.DateIntervalUnit.DAYS) ) } )
Attributes
- type
The type of partition projection.
Static Methods
- classmethod date(*, format, max, min, step=None)
Create a DATE partition projection configuration.
- Parameters:
format (
str) – Date format for partition values. Uses Java SimpleDateFormat patterns.max (
str) – End date for the partition range (inclusive). Can be either: - Fixed date in the format specified byformatproperty - Relative date using NOW syntax Same format constraints asmin.min (
str) – Start date for the partition range (inclusive). Can be either: - Fixed date in the format specified byformatproperty (e.g., ‘2020-01-01’ for format ‘yyyy-MM-dd’) - Relative date using NOW syntax (e.g., ‘NOW’, ‘NOW-3YEARS’, ‘NOW+1MONTH’)step (
Union[DateProjectionStep,Dict[str,Any],None]) – Interval step (interval+intervalUnit) between partition values. The two are supplied together, so a partial step cannot be expressed. Required whenformatcarries sub-day precision — a field finer than a day, such as hours or AM/PM; at day or coarser precision Athena defaults the step, so it may be omitted. Default: - Athena’s default step for the format’s precision; required whenformatis sub-day precision
- Return type:
- classmethod enum(*, values)
Create an ENUM partition projection configuration.
- Parameters:
values (
Sequence[str]) – Explicit list of partition values.- Return type:
- classmethod injected()
Create an INJECTED partition projection configuration.
Partition values are injected at query time through the query statement.
- classmethod integer(*, max, min, digits=None, interval=None)
Create an INTEGER partition projection configuration.
- Parameters:
max (
Union[int,float]) – Maximum value for the integer partition range (inclusive).min (
Union[int,float]) – Minimum value for the integer partition range (inclusive).digits (
Union[int,float,None]) – Number of digits to pad the partition value with leading zeros. With digits: 4, partition values: 0001, 0002, …, 0100 Default: - no static number of digits and no leading zeroesinterval (
Union[int,float,None]) – Interval between partition values. Default: 1
- Return type: