gravitino.dto.rel.partitioning.year_partitioning_dto.YearPartitioningDTO

final class gravitino.dto.rel.partitioning.year_partitioning_dto.YearPartitioningDTO(*field_name: str)

Bases: SingleFieldPartitioning

Represents the YearPartitioning Data Transfer Object (DTO).

__init__(*field_name: str)

Methods

__init__(*field_name)

arguments()

Returns the arguments of the partitioning strategy.

assignments()

Gets the preassigned partitions in the partitioning.

children()

Returns a list of the children of this node.

field_name()

Returns the field name of the partitioning.

get_by_name(name)

Gets the partitioning strategy by name.

name()

Returns the name of the partitioning strategy.

references()

Returns a list of fields or columns that are referenced by this expression.

strategy()

Returns the strategy of the partitioning.

validate(columns)

Validates the partitioning columns.

Attributes

EMPTY_EXPRESSION

EMPTY_EXPRESSION is only used as an input when the default children method builds the result.

EMPTY_NAMED_REFERENCE

EMPTY_NAMED_REFERENCE is only used as an input when the default references method builds the result array to avoid repeatedly allocating an empty array.

EMPTY_PARTITIONING

An empty array of partitioning.

EMPTY_EXPRESSION: List[Expression] = []

EMPTY_EXPRESSION is only used as an input when the default children method builds the result.

EMPTY_NAMED_REFERENCE: List[NamedReference] = []

EMPTY_NAMED_REFERENCE is only used as an input when the default references method builds the result array to avoid repeatedly allocating an empty array.

EMPTY_PARTITIONING: Final[List[Partitioning]] = []

An empty array of partitioning.

class Strategy(value)

Bases: str, Enum

Represents a partitioning strategy.

BUCKET = 'bucket'

The bucket partitioning strategy.

DAY = 'day'

The day partitioning strategy.

FUNCTION = 'function'

The function partitioning strategy.

HOUR = 'hour'

The hour partitioning strategy.

IDENTITY = 'identity'

The identity partitioning strategy.

LIST = 'list'

The list partitioning strategy.

MONTH = 'month'

The month partitioning strategy.

RANGE = 'range'

The range partitioning strategy.

TRUNCATE = 'truncate'

The truncate partitioning strategy.

YEAR = 'year'

The year partitioning strategy.

arguments() List[Expression]

Returns the arguments of the partitioning strategy.

Returns:

List[Expression]: The arguments of the partitioning strategy.

assignments() List[Partition]

Gets the preassigned partitions in the partitioning.

Currently, only Transforms.ListTransform and Transforms.RangeTransform need to deal with assignments

Returns:

List[Partition]: The preassigned partitions in the partitioning.

children() List[Expression]

Returns a list of the children of this node. Children should not change.

field_name() List[str]

Returns the field name of the partitioning.

Returns:

List[str]: The field name of the partitioning.

static get_by_name(name: str) Strategy

Gets the partitioning strategy by name.

Args:

name (str): The name of the partitioning strategy.

Returns:

Strategy: The partitioning strategy.

Raises:

IllegalArgumentException: If the name is invalid, this exception is thrown.

name() str

Returns the name of the partitioning strategy.

Returns:

str: The name of the partitioning strategy.

references() List[NamedReference]

Returns a list of fields or columns that are referenced by this expression.

strategy() Strategy

Returns the strategy of the partitioning.

Returns:

Strategy: The strategy of the partitioning.

validate(columns: List[ColumnDTO]) None

Validates the partitioning columns.

Args:

columns (List[ColumnDTO]): The columns to be validated.

Raises:

IllegalArgumentException: If the columns are invalid, this exception is thrown.