Packages

c

io.delta.flink.source

DeltaSource

class DeltaSource[T] extends DeltaSourceInternal[T]

A unified data source that reads Delta table - both in batch and in streaming mode.

This source supports all (distributed) file systems and object stores that can be accessed via the Flink's FileSystem class.

To create a new instance of DeltaSource for a Delta table that will produce RowData records that contain all table columns:

    StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
    ...
    // Bounded mode.
    DeltaSource<RowData> deltaSource = DeltaSource.forBoundedRowData(
               new Path("s3://some/path"),
               new Configuration()
            )
            .versionAsOf(10)
            .build();

    env.fromSource(deltaSource, WatermarkStrategy.noWatermarks(), "delta-source")

    ..........
    // Continuous mode.
    DeltaSource<RowData> deltaSource = DeltaSource.forContinuousRowData(
               new Path("s3://some/path"),
               new Configuration()
              )
             .updateCheckIntervalMillis(1000)
             .startingVersion(10)
             .build();

    env.fromSource(deltaSource, WatermarkStrategy.noWatermarks(), "delta-source")

To create a new instance of DeltaSource for a Delta table that will produce RowData records with user-selected columns:

    StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
    ...
    // Bounded mode.
    DeltaSource<RowData> deltaSource = DeltaSource.forBoundedRowData(
               new Path("s3://some/path"),
               new Configuration()
            )
            .columnNames(Arrays.asList("col1", "col2"))
            .versionAsOf(10)
            .build();

    env.fromSource(deltaSource, WatermarkStrategy.noWatermarks(), "delta-source")

    ..........
    // Continuous mode.
    DeltaSource<RowData> deltaSource = DeltaSource.forContinuousRowData(
               new Path("s3://some/path"),
               new Configuration()
              )
              .columnNames(Arrays.asList("col1", "col2"))
              .updateCheckIntervalMillis(1000)
              .startingVersion(10)
              .build();

    env.fromSource(deltaSource, WatermarkStrategy.noWatermarks(), "delta-source")
When using columnNames(...) method, the source will discover the data types for the given columns from the Delta log.

Linear Supertypes
DeltaSourceInternal[T], ResultTypeQueryable[T], Source[T, DeltaSourceSplit, DeltaEnumeratorStateCheckpoint[DeltaSourceSplit]], Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DeltaSource
  2. DeltaSourceInternal
  3. ResultTypeQueryable
  4. Source
  5. Serializable
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. def createEnumerator(enumContext: SplitEnumeratorContext[DeltaSourceSplit]): SplitEnumerator[DeltaSourceSplit, DeltaEnumeratorStateCheckpoint[DeltaSourceSplit]]
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  7. def createReader(readerContext: SourceReaderContext): SourceReader[T, DeltaSourceSplit]
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def getBoundedness(): Boundedness
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def getEnumeratorCheckpointSerializer(): SimpleVersionedSerializer[DeltaEnumeratorStateCheckpoint[DeltaSourceSplit]]
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  14. def getProducedType(): TypeInformation[T]
    Definition Classes
    DeltaSourceInternal → ResultTypeQueryable
    Annotations
    @Override()
  15. def getSourceConfiguration(): DeltaConnectorConfiguration
    Definition Classes
    DeltaSourceInternal
    Annotations
    @VisibleForTesting()
  16. def getSplitSerializer(): SimpleVersionedSerializer[DeltaSourceSplit]
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  17. def getTablePath(): Path
    Definition Classes
    DeltaSourceInternal
    Annotations
    @VisibleForTesting()
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. def restoreEnumerator(enumContext: SplitEnumeratorContext[DeltaSourceSplit], checkpoint: DeltaEnumeratorStateCheckpoint[DeltaSourceSplit]): SplitEnumerator[DeltaSourceSplit, DeltaEnumeratorStateCheckpoint[DeltaSourceSplit]]
    Definition Classes
    DeltaSourceInternal → Source
    Annotations
    @Override()
  24. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  25. def toString(): String
    Definition Classes
    AnyRef → Any
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from DeltaSourceInternal[T]

Inherited from ResultTypeQueryable[T]

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped