Class IntegrationPartition

java.lang.Object
software.amazon.awssdk.services.glue.model.IntegrationPartition
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<IntegrationPartition.Builder,IntegrationPartition>

@Generated("software.amazon.awssdk:codegen") public final class IntegrationPartition extends Object implements SdkPojo, Serializable, ToCopyableBuilder<IntegrationPartition.Builder,IntegrationPartition>

A structure that describes how data is partitioned on the target.

See Also:
  • Method Details

    • fieldName

      public final String fieldName()

      The field name used to partition data on the target. Avoid using columns that have unique values for each row (for example, `LastModifiedTimestamp`, `SystemModTimeStamp`) as the partition column. These columns are not suitable for partitioning because they create a large number of small partitions, which can lead to performance issues.

      Returns:
      The field name used to partition data on the target. Avoid using columns that have unique values for each row (for example, `LastModifiedTimestamp`, `SystemModTimeStamp`) as the partition column. These columns are not suitable for partitioning because they create a large number of small partitions, which can lead to performance issues.
    • functionSpec

      public final String functionSpec()

      Specifies the function used to partition data on the target. The accepted values for this parameter are:

      • identity - Uses source values directly without transformation

      • year - Extracts the year from timestamp values (e.g., 2023)

      • month - Extracts the month from timestamp values (e.g., 2023-01)

      • day - Extracts the day from timestamp values (e.g., 2023-01-15)

      • hour - Extracts the hour from timestamp values (e.g., 2023-01-15-14)

      Returns:
      Specifies the function used to partition data on the target. The accepted values for this parameter are:

      • identity - Uses source values directly without transformation

      • year - Extracts the year from timestamp values (e.g., 2023)

      • month - Extracts the month from timestamp values (e.g., 2023-01)

      • day - Extracts the day from timestamp values (e.g., 2023-01-15)

      • hour - Extracts the hour from timestamp values (e.g., 2023-01-15-14)

    • conversionSpec

      public final String conversionSpec()

      Specifies the timestamp format of the source data. Valid values are:

      • epoch_sec - Unix epoch timestamp in seconds

      • epoch_milli - Unix epoch timestamp in milliseconds

      • iso - ISO 8601 formatted timestamp

      Only specify ConversionSpec when using timestamp-based partition functions (year, month, day, or hour). Glue Zero-ETL uses this parameter to correctly transform source data into timestamp format before partitioning.

      Do not use high-cardinality columns with the identity partition function. High-cardinality columns include:

      • Primary keys

      • Timestamp fields (such as LastModifiedTimestamp, CreatedDate)

      • System-generated timestamps

      Using high-cardinality columns with identity partitioning creates many small partitions, which can significantly degrade ingestion performance.

      Returns:
      Specifies the timestamp format of the source data. Valid values are:

      • epoch_sec - Unix epoch timestamp in seconds

      • epoch_milli - Unix epoch timestamp in milliseconds

      • iso - ISO 8601 formatted timestamp

      Only specify ConversionSpec when using timestamp-based partition functions (year, month, day, or hour). Glue Zero-ETL uses this parameter to correctly transform source data into timestamp format before partitioning.

      Do not use high-cardinality columns with the identity partition function. High-cardinality columns include:

      • Primary keys

      • Timestamp fields (such as LastModifiedTimestamp, CreatedDate)

      • System-generated timestamps

      Using high-cardinality columns with identity partitioning creates many small partitions, which can significantly degrade ingestion performance.

    • toBuilder

      public IntegrationPartition.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<IntegrationPartition.Builder,IntegrationPartition>
      Returns:
      a builder for type T
    • builder

      public static IntegrationPartition.Builder builder()
    • serializableBuilderClass

      public static Class<? extends IntegrationPartition.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.