Interface Table
- All Superinterfaces:
Auditable
- All Known Implementing Classes:
TableDTO
Namespace. It defines the basic properties of a
table. A catalog implementation with TableCatalog should implement this interface.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionColumn[]columns()default Stringcomment()default Distributiondefault Index[]index()name()default Transform[]default SortOrder[]default SupportsPartitionsTable method for working with partitions.default SupportsPartitionStatisticsReturns theSupportsPartitionStatisticsif the table supports partition statisticsdefault SupportsPoliciesdefault SupportsRolesdefault SupportsStatisticsReturns theSupportsStatisticsif the table supports statistics operations.default SupportsTags
-
Field Details
-
PROPERTY_TABLE_FORMAT
The property name for the table format. This property indicates the format of the table, such as "iceberg", "hudi", "lance", etc. generic lakehouse catalog will use this property to determine the table format and perform specific operations based on the format. For other relational catalogs, this property can be ignored.This property is a must-have property for generic lakehouse catalog to create tables, and cannot be modified after table creation.
Current supported formats include:
- lance
- See Also:
-
PROPERTY_EXTERNAL
The property name to indicate whether the table is external. This property is a boolean value represented as a string ("true" or "false"). if true (the table is external), the drop operation will not delete the underlying data.This property is optional and defaults to "false" if not specified. Also, it depends on the catalog implementation to decide whether to leverage and allow to alter this property.
- See Also:
-
PROPERTY_LOCATION
The property name for the table location. This property indicates the physical location of the table's data, such as a file path or a URI.The location property is optional, it can be specified when creating the table. If not, the catalog implementation may use a location based on the catalog and schema location properties.
It depends on the catalog implementation to decide whether to leverage and allow to alter this property after table creation. And the behavior of altering this property (moving the table data) is also catalog specific.
- See Also:
-
-
Method Details
-
name
String name()- Returns:
- Name of the table.
-
columns
Column[] columns()- Returns:
- The columns of the table.
-
partitioning
- Returns:
- The physical partitioning of the table.
-
sortOrder
- Returns:
- The sort order of the table. If no sort order is specified, an empty array is returned.
-
distribution
- Returns:
- The bucketing of the table. If no bucketing is specified, Distribution.NONE is returned.
-
index
- Returns:
- The indexes of the table. If no indexes are specified, Indexes.EMPTY_INDEXES is returned.
-
comment
- Returns:
- The comment of the table. Null is returned if no comment is set.
-
properties
- Returns:
- The properties of the table. Empty map is returned if no properties are set.
-
supportPartitions
Table method for working with partitions. If the table does not support partition operations, anUnsupportedOperationExceptionis thrown.- Returns:
- The partition support table.
- Throws:
UnsupportedOperationException- If the table does not support partition operations.
-
supportsTags
- Returns:
- The
SupportsTagsif the table supports tag operations. - Throws:
UnsupportedOperationException- If the table does not support tag operations.
-
supportsPolicies
- Returns:
- The
SupportsPoliciesif the table supports policy operations. - Throws:
UnsupportedOperationException- If the table does not support policy operations.
-
supportsRoles
- Returns:
- The
SupportsRolesif the table supports role operations. - Throws:
UnsupportedOperationException- If the table does not support role operations.
-
supportsStatistics
Returns theSupportsStatisticsif the table supports statistics operations.- Returns:
- The
SupportsStatisticsfor the table.
-
supportsPartitionStatistics
Returns theSupportsPartitionStatisticsif the table supports partition statistics- Returns:
- The
SupportsPartitionStatisticsfor the table.
-