@Internal public class DefaultCatalogMaterializedTable extends Object implements CatalogMaterializedTable
CatalogMaterializedTable
.CatalogMaterializedTable.Builder, CatalogMaterializedTable.LogicalRefreshMode, CatalogMaterializedTable.RefreshMode, CatalogMaterializedTable.RefreshStatus
CatalogBaseTable.TableKind
Modifier | Constructor and Description |
---|---|
protected |
DefaultCatalogMaterializedTable(Schema schema,
String comment,
List<String> partitionKeys,
Map<String,String> options,
Long snapshot,
String definitionQuery,
IntervalFreshness freshness,
CatalogMaterializedTable.LogicalRefreshMode logicalRefreshMode,
CatalogMaterializedTable.RefreshMode refreshMode,
CatalogMaterializedTable.RefreshStatus refreshStatus,
String refreshHandlerDescription,
byte[] serializedRefreshHandler) |
Modifier and Type | Method and Description |
---|---|
CatalogBaseTable |
copy()
Get a deep copy of the CatalogBaseTable instance.
|
CatalogMaterializedTable |
copy(CatalogMaterializedTable.RefreshStatus refreshStatus,
String refreshHandlerDescription,
byte[] serializedRefreshHandler)
Returns a copy of this
CatalogDynamicTable with given refresh info. |
CatalogMaterializedTable |
copy(Map<String,String> options)
Returns a copy of this
CatalogMaterializedTable with given table options options . |
boolean |
equals(Object o) |
String |
getComment()
Get comment of the table or view.
|
IntervalFreshness |
getDefinitionFreshness()
Get the definition freshness of materialized table which is used to determine the physical
refresh mode.
|
String |
getDefinitionQuery()
The definition query text of materialized table, text is expanded in contrast to the original
SQL.
|
Optional<String> |
getDescription()
Get a brief description of the table or view.
|
Optional<String> |
getDetailedDescription()
Get a detailed description of the table or view.
|
CatalogMaterializedTable.LogicalRefreshMode |
getLogicalRefreshMode()
Get the logical refresh mode of materialized table.
|
Map<String,String> |
getOptions()
Returns a map of string-based options.
|
List<String> |
getPartitionKeys()
Get the partition keys of the table.
|
Optional<String> |
getRefreshHandlerDescription()
Return summary description of refresh handler.
|
CatalogMaterializedTable.RefreshMode |
getRefreshMode()
Get the physical refresh mode of materialized table.
|
CatalogMaterializedTable.RefreshStatus |
getRefreshStatus()
Get the refresh status of materialized table.
|
byte[] |
getSerializedRefreshHandler()
Return the serialized refresh handler of materialized table.
|
Optional<Long> |
getSnapshot()
Return the snapshot specified for the table.
|
Schema |
getUnresolvedSchema()
Returns the schema of the table or view.
|
int |
hashCode() |
boolean |
isPartitioned()
Check if the table is partitioned or not.
|
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getFreshness, getTableKind, newBuilder
getSchema
protected DefaultCatalogMaterializedTable(Schema schema, @Nullable String comment, List<String> partitionKeys, Map<String,String> options, @Nullable Long snapshot, String definitionQuery, IntervalFreshness freshness, CatalogMaterializedTable.LogicalRefreshMode logicalRefreshMode, CatalogMaterializedTable.RefreshMode refreshMode, CatalogMaterializedTable.RefreshStatus refreshStatus, @Nullable String refreshHandlerDescription, @Nullable byte[] serializedRefreshHandler)
public Schema getUnresolvedSchema()
CatalogBaseTable
The schema can reference objects from other catalogs and will be resolved and validated by the framework when accessing the table or view.
getUnresolvedSchema
in interface CatalogBaseTable
ResolvedCatalogTable
,
ResolvedCatalogView
public String getComment()
CatalogBaseTable
getComment
in interface CatalogBaseTable
public boolean isPartitioned()
CatalogMaterializedTable
isPartitioned
in interface CatalogMaterializedTable
public List<String> getPartitionKeys()
CatalogMaterializedTable
getPartitionKeys
in interface CatalogMaterializedTable
public Map<String,String> getOptions()
CatalogBaseTable
In case of CatalogTable
, these options may determine the kind of connector and its
configuration for accessing the data in the external system. See DynamicTableFactory
for more information. If a CatalogTable
should not be serializable, an implementation
can simply throw a runtime exception in this method.
getOptions
in interface CatalogBaseTable
public CatalogBaseTable copy()
CatalogBaseTable
copy
in interface CatalogBaseTable
public CatalogMaterializedTable copy(Map<String,String> options)
CatalogMaterializedTable
CatalogMaterializedTable
with given table options options
.copy
in interface CatalogMaterializedTable
public CatalogMaterializedTable copy(CatalogMaterializedTable.RefreshStatus refreshStatus, String refreshHandlerDescription, byte[] serializedRefreshHandler)
CatalogMaterializedTable
CatalogDynamicTable
with given refresh info.copy
in interface CatalogMaterializedTable
public Optional<String> getDescription()
CatalogBaseTable
getDescription
in interface CatalogBaseTable
public Optional<String> getDetailedDescription()
CatalogBaseTable
getDetailedDescription
in interface CatalogBaseTable
public Optional<Long> getSnapshot()
CatalogMaterializedTable
getSnapshot
in interface CatalogMaterializedTable
public String getDefinitionQuery()
CatalogMaterializedTable
For example, for a materialized table that is defined in the context of "default" database
with a query select * from test1
, the expanded query text might become select
`test1`.`name`, `test1`.`value` from `default`.`test1`
, where table test1 resides in
database "default" and has two columns ("name" and "value").
getDefinitionQuery
in interface CatalogMaterializedTable
public IntervalFreshness getDefinitionFreshness()
CatalogMaterializedTable
getDefinitionFreshness
in interface CatalogMaterializedTable
public CatalogMaterializedTable.LogicalRefreshMode getLogicalRefreshMode()
CatalogMaterializedTable
getLogicalRefreshMode
in interface CatalogMaterializedTable
public CatalogMaterializedTable.RefreshMode getRefreshMode()
CatalogMaterializedTable
getRefreshMode
in interface CatalogMaterializedTable
public CatalogMaterializedTable.RefreshStatus getRefreshStatus()
CatalogMaterializedTable
getRefreshStatus
in interface CatalogMaterializedTable
public Optional<String> getRefreshHandlerDescription()
CatalogMaterializedTable
getRefreshHandlerDescription
in interface CatalogMaterializedTable
@Nullable public byte[] getSerializedRefreshHandler()
CatalogMaterializedTable
getSerializedRefreshHandler
in interface CatalogMaterializedTable
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.