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

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

Represents a collection of related data organized in columns and rows.

See Also:
  • Method Details

    • name

      public final String name()

      The table name. For Hive compatibility, this must be entirely lowercase.

      Returns:
      The table name. For Hive compatibility, this must be entirely lowercase.
    • databaseName

      public final String databaseName()

      The name of the database where the table metadata resides. For Hive compatibility, this must be all lowercase.

      Returns:
      The name of the database where the table metadata resides. For Hive compatibility, this must be all lowercase.
    • description

      public final String description()

      A description of the table.

      Returns:
      A description of the table.
    • owner

      public final String owner()

      The owner of the table.

      Returns:
      The owner of the table.
    • createTime

      public final Instant createTime()

      The time when the table definition was created in the Data Catalog.

      Returns:
      The time when the table definition was created in the Data Catalog.
    • updateTime

      public final Instant updateTime()

      The last time that the table was updated.

      Returns:
      The last time that the table was updated.
    • lastAccessTime

      public final Instant lastAccessTime()

      The last time that the table was accessed. This is usually taken from HDFS, and might not be reliable.

      Returns:
      The last time that the table was accessed. This is usually taken from HDFS, and might not be reliable.
    • lastAnalyzedTime

      public final Instant lastAnalyzedTime()

      The last time that column statistics were computed for this table.

      Returns:
      The last time that column statistics were computed for this table.
    • retention

      public final Integer retention()

      The retention time for this table.

      Returns:
      The retention time for this table.
    • storageDescriptor

      public final StorageDescriptor storageDescriptor()

      A storage descriptor containing information about the physical storage of this table.

      Returns:
      A storage descriptor containing information about the physical storage of this table.
    • hasPartitionKeys

      public final boolean hasPartitionKeys()
      For responses, this returns true if the service returned a value for the PartitionKeys property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • partitionKeys

      public final List<Column> partitionKeys()

      A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

      When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

      "PartitionKeys": []

      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 hasPartitionKeys() method.

      Returns:
      A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

      When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

      "PartitionKeys": []

    • viewOriginalText

      public final String viewOriginalText()

      Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

      Returns:
      Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.
    • viewExpandedText

      public final String viewExpandedText()

      Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

      Returns:
      Included for Apache Hive compatibility. Not used in the normal course of Glue operations.
    • tableType

      public final String tableType()

      The type of this table. Glue will create tables with the EXTERNAL_TABLE type. Other services, such as Athena, may create tables with additional table types.

      Glue related table types:

      EXTERNAL_TABLE

      Hive compatible attribute - indicates a non-Hive managed table.

      GOVERNED

      Used by Lake Formation. The Glue Data Catalog understands GOVERNED.

      Returns:
      The type of this table. Glue will create tables with the EXTERNAL_TABLE type. Other services, such as Athena, may create tables with additional table types.

      Glue related table types:

      EXTERNAL_TABLE

      Hive compatible attribute - indicates a non-Hive managed table.

      GOVERNED

      Used by Lake Formation. The Glue Data Catalog understands GOVERNED.

    • hasParameters

      public final boolean hasParameters()
      For responses, this returns true if the service returned a value for the Parameters property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • parameters

      public final Map<String,String> parameters()

      These key-value pairs define properties associated with the table.

      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 hasParameters() method.

      Returns:
      These key-value pairs define properties associated with the table.
    • createdBy

      public final String createdBy()

      The person or entity who created the table.

      Returns:
      The person or entity who created the table.
    • isRegisteredWithLakeFormation

      public final Boolean isRegisteredWithLakeFormation()

      Indicates whether the table has been registered with Lake Formation.

      Returns:
      Indicates whether the table has been registered with Lake Formation.
    • targetTable

      public final TableIdentifier targetTable()

      A TableIdentifier structure that describes a target table for resource linking.

      Returns:
      A TableIdentifier structure that describes a target table for resource linking.
    • catalogId

      public final String catalogId()

      The ID of the Data Catalog in which the table resides.

      Returns:
      The ID of the Data Catalog in which the table resides.
    • versionId

      public final String versionId()

      The ID of the table version.

      Returns:
      The ID of the table version.
    • federatedTable

      public final FederatedTable federatedTable()

      A FederatedTable structure that references an entity outside the Glue Data Catalog.

      Returns:
      A FederatedTable structure that references an entity outside the Glue Data Catalog.
    • viewDefinition

      public final ViewDefinition viewDefinition()

      A structure that contains all the information that defines the view, including the dialect or dialects for the view, and the query.

      Returns:
      A structure that contains all the information that defines the view, including the dialect or dialects for the view, and the query.
    • isMultiDialectView

      public final Boolean isMultiDialectView()

      Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.

      Returns:
      Specifies whether the view supports the SQL dialects of one or more different query engines and can therefore be read by those engines.
    • toBuilder

      public Table.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<Table.Builder,Table>
      Returns:
      a builder for type T
    • builder

      public static Table.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Table.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.