Class MonitorSource
java.lang.Object
org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource<org.apache.iceberg.flink.maintenance.operator.TableChange>
org.apache.iceberg.flink.maintenance.operator.MonitorSource
- All Implemented Interfaces:
Serializable
,org.apache.flink.api.connector.source.Source<org.apache.iceberg.flink.maintenance.operator.TableChange,
,org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>, Collection<org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>>> org.apache.flink.api.connector.source.SourceReaderFactory<org.apache.iceberg.flink.maintenance.operator.TableChange,
,org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>> org.apache.flink.api.java.typeutils.ResultTypeQueryable<org.apache.iceberg.flink.maintenance.operator.TableChange>
@Internal
public class MonitorSource
extends SingleThreadedIteratorSource<org.apache.iceberg.flink.maintenance.operator.TableChange>
Monitors an Iceberg table for changes
- See Also:
-
Constructor Summary
ConstructorDescriptionMonitorSource
(TableLoader tableLoader, org.apache.flink.api.connector.source.util.ratelimit.RateLimiterStrategy rateLimiterStrategy, long maxReadBack) Creates aSource
which monitors an Iceberg table for changes. -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.flink.api.connector.source.SourceReader<org.apache.iceberg.flink.maintenance.operator.TableChange,
org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>> createReader
(org.apache.flink.api.connector.source.SourceReaderContext readerContext) org.apache.flink.api.connector.source.Boundedness
org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.iceberg.flink.maintenance.operator.TableChange>
Methods inherited from class org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource
createEnumerator, getEnumeratorCheckpointSerializer, getSplitSerializer, restoreEnumerator
-
Constructor Details
-
MonitorSource
public MonitorSource(TableLoader tableLoader, org.apache.flink.api.connector.source.util.ratelimit.RateLimiterStrategy rateLimiterStrategy, long maxReadBack) Creates aSource
which monitors an Iceberg table for changes.- Parameters:
tableLoader
- used for accessing the tablerateLimiterStrategy
- limits the frequency the table is checkedmaxReadBack
- sets the number of snapshots read before stopping change collection
-
-
Method Details
-
getBoundedness
public org.apache.flink.api.connector.source.Boundedness getBoundedness() -
getProducedType
public org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.iceberg.flink.maintenance.operator.TableChange> getProducedType() -
createReader
public org.apache.flink.api.connector.source.SourceReader<org.apache.iceberg.flink.maintenance.operator.TableChange,org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>> createReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext) throws Exception - Specified by:
createReader
in interfaceorg.apache.flink.api.connector.source.SourceReaderFactory<org.apache.iceberg.flink.maintenance.operator.TableChange,
org.apache.iceberg.flink.maintenance.operator.SingleThreadedIteratorSource.GlobalSplit<org.apache.iceberg.flink.maintenance.operator.TableChange>> - Overrides:
createReader
in classSingleThreadedIteratorSource<org.apache.iceberg.flink.maintenance.operator.TableChange>
- Throws:
Exception
-