@PublicEvolving public interface CatalogMaterializedTable extends CatalogBaseTable
Catalog
.
Materialized Table definition: In the context of streaming-batch unified storage, it provides full history data and incremental changelog. By defining the data's production business logic and freshness, data refresh is achieved through continuous or full refresh pipeline, while also possessing the capability for both batch and incremental consumption.
The metadata for CatalogMaterializedTable
includes the following four main parts:
Modifier and Type | Interface and Description |
---|---|
static class |
CatalogMaterializedTable.Builder
Builder for configuring and creating instances of
CatalogMaterializedTable . |
static class |
CatalogMaterializedTable.LogicalRefreshMode
The logical refresh mode of materialized table.
|
static class |
CatalogMaterializedTable.RefreshMode
The physical refresh mode of materialized table.
|
static class |
CatalogMaterializedTable.RefreshStatus
Background refresh pipeline status of materialized table.
|
CatalogBaseTable.TableKind
Modifier and Type | Method and Description |
---|---|
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 . |
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.
|
default Duration |
getFreshness()
Get the
Duration value of materialized table definition freshness, it is converted
from IntervalFreshness . |
CatalogMaterializedTable.LogicalRefreshMode |
getLogicalRefreshMode()
Get the logical refresh mode of materialized table.
|
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.
|
default CatalogBaseTable.TableKind |
getTableKind()
The kind of table this
CatalogBaseTable describes. |
boolean |
isPartitioned()
Check if the table is partitioned or not.
|
static CatalogMaterializedTable.Builder |
newBuilder()
Builder for configuring and creating instances of
CatalogMaterializedTable . |
copy, getComment, getDescription, getDetailedDescription, getOptions, getSchema, getUnresolvedSchema
@PublicEvolving static CatalogMaterializedTable.Builder newBuilder()
CatalogMaterializedTable
.default CatalogBaseTable.TableKind getTableKind()
CatalogBaseTable
CatalogBaseTable
describes.getTableKind
in interface CatalogBaseTable
boolean isPartitioned()
List<String> getPartitionKeys()
CatalogMaterializedTable copy(Map<String,String> options)
CatalogMaterializedTable
with given table options options
.CatalogMaterializedTable copy(CatalogMaterializedTable.RefreshStatus refreshStatus, String refreshHandlerDescription, byte[] serializedRefreshHandler)
CatalogDynamicTable
with given refresh info.Optional<Long> getSnapshot()
String getDefinitionQuery()
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").
IntervalFreshness getDefinitionFreshness()
default Duration getFreshness()
Duration
value of materialized table definition freshness, it is converted
from IntervalFreshness
.CatalogMaterializedTable.LogicalRefreshMode getLogicalRefreshMode()
CatalogMaterializedTable.RefreshMode getRefreshMode()
CatalogMaterializedTable.RefreshStatus getRefreshStatus()
Optional<String> getRefreshHandlerDescription()
@Nullable byte[] getSerializedRefreshHandler()
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.