Packages

  • package root
    Definition Classes
    root
  • package com
    Definition Classes
    root
  • package adform
    Definition Classes
    com
  • package streamloader

    The entry point of the stream loader library is the StreamLoader class, which requires a $KafkaSource and a $Sink.

    The entry point of the stream loader library is the StreamLoader class, which requires a $KafkaSource and a $Sink. Once started it will subscribe to the provided topics and will start polling and sinking records. The sink has to be able to persist records and to look up committed offsets (technically this is optional, but without it there would be no way to provide any delivery guarantees). A large class of sinks are batch based, implemented as $RecordBatchingSink. This sink accumulate batches of records using some $RecordBatcher and once ready, stores them to some underlying $RecordBatchStorage. A common type of batch is file based, i.e. a batcher might write records to a temporary file and once the file is full the sink commits the file to some underlying storage, such as a database or a distributed file system like HDFS.

    A sketch of the class hierarchy illustrating the main classes and interfaces can be seen below.



    For concrete storage implementations see the clickhouse, hadoop, s3 and vertica packages. They also contain more file builder implementations than just the $CsvFileBuilder included in the core library.

    Definition Classes
    adform
  • package clickhouse
    Definition Classes
    streamloader
  • package hadoop
    Definition Classes
    streamloader
  • package iceberg
    Definition Classes
    streamloader
  • package model
    Definition Classes
    streamloader
  • StreamInterval
  • StreamPosition
  • StreamRange
  • StreamRangeBuilder
  • StreamRecord
  • Timestamp
  • package s3
    Definition Classes
    streamloader
  • package sink
    Definition Classes
    streamloader
  • package source
    Definition Classes
    streamloader
  • package util
    Definition Classes
    streamloader
  • package vertica
    Definition Classes
    streamloader

package model

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait StreamInterval extends AnyRef

    Represents an interval in a single stream partition.

    Represents an interval in a single stream partition. Can be either an offset interval, a watermark difference or some combination of both.

  2. case class StreamPosition(offset: Long, watermark: Timestamp) extends Ordered[StreamPosition] with Product with Serializable

    Represents a position in a single partition of a stream.

    Represents a position in a single partition of a stream.

    offset

    The numeric offset with the partition, i.e. the Kafka offset.

    watermark

    The watermark, i.e. maximum timestamp seen up to that point.

  3. case class StreamRange(topic: String, partition: Int, start: StreamPosition, end: StreamPosition) extends Product with Serializable

    Specification of a range of records consumed from a single topic partition, the start and end positions are both inclusive.

  4. class StreamRangeBuilder extends AnyRef

    A mutable builder of StreamRange.

  5. case class StreamRecord(consumerRecord: ConsumerRecord[Array[Byte], Array[Byte]], watermark: Timestamp) extends Product with Serializable

    A single record consumed from the source.

    A single record consumed from the source.

    consumerRecord

    The Kafka consumer record.

    watermark

    The calculated watermark, i.e. the maximum timestamp seen.

  6. final case class Timestamp(millis: Long) extends AnyVal with Ordered[Timestamp] with Product with Serializable

    A value wrapper for unix epoch milliseconds.

Value Members

  1. object StreamInterval
  2. object StreamRange extends Serializable

Ungrouped