Class IcebergPartitionSpec
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<IcebergPartitionSpec.Builder,IcebergPartitionSpec>
Defines how data in an Iceberg table is partitioned. Partitioning helps optimize query performance by organizing data into separate files based on field values. Each partition field specifies a transform to apply to a source field.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic IcebergPartitionSpec.Builderbuilder()final booleanfinal booleanequalsBySdkFields(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final List<IcebergPartitionField> fields()The list of partition fields that define how the table data is partitioned.final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) final booleanFor responses, this returns true if the service returned a value for the Fields property.final inthashCode()static Class<? extends IcebergPartitionSpec.Builder> final IntegerspecId()The unique identifier for this partition specification.Take this object and create a builder that contains all of the current property values of this object.final StringtoString()Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
hasFields
public final boolean hasFields()For responses, this returns true if the service returned a value for the Fields property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
fields
The list of partition fields that define how the table data is partitioned. Each field specifies a source field and a transform to apply. This field is required if
partitionSpecis provided.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasFields()method.- Returns:
- The list of partition fields that define how the table data is partitioned. Each field specifies a source
field and a transform to apply. This field is required if
partitionSpecis provided.
-
specId
The unique identifier for this partition specification. If not specified, defaults to
0.- Returns:
- The unique identifier for this partition specification. If not specified, defaults to
0.
-
toBuilder
Description copied from interface:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<IcebergPartitionSpec.Builder,IcebergPartitionSpec> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin interfaceSdkPojo- Parameters:
obj- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo- Returns:
- The mapping between the field name and its corresponding field.
-