Interface DynamicTableSource
-
- All Known Subinterfaces:
LookupTableSource,ScanTableSource
@PublicEvolving public interface DynamicTableSourceSource of a dynamic table from an external storage system.Dynamic tables are the core concept of Flink's Table & SQL API for processing both bounded and unbounded data in a unified fashion. By definition, a dynamic table can change over time.
When reading a dynamic table, the content can either be considered as:
- A changelog (finite or infinite) for which all changes are consumed continuously until the
changelog is exhausted. See
ScanTableSourcefor more information. - A continuously changing or very large external table whose content is usually never read
entirely but queried for individual values when necessary. See
LookupTableSourcefor more information.
Note: Both interfaces can be implemented at the same time. The planner decides about their usage depending on the specified query.
Instances of the above-mentioned interfaces can be seen as factories that eventually produce concrete runtime implementation for reading the actual data.
Depending on the optionally declared abilities such as
SupportsProjectionPushDownorSupportsFilterPushDown, the planner might apply changes to an instance and thus mutates the produced runtime implementation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceDynamicTableSource.ContextBase context for creating runtime implementation via aScanTableSource.ScanRuntimeProviderandLookupTableSource.LookupRuntimeProvider.static interfaceDynamicTableSource.DataStructureConverterConverter for mapping between objects and Flink's internal data structures during runtime.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringasSummaryString()Returns a string that summarizes this source for printing to a console or log.DynamicTableSourcecopy()Creates a copy of this instance during planning.
-
-
-
Method Detail
-
copy
DynamicTableSource copy()
Creates a copy of this instance during planning. The copy should be a deep copy of all mutable members.
-
asSummaryString
String asSummaryString()
Returns a string that summarizes this source for printing to a console or log.
-
-