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 sink
    Definition Classes
    streamloader
  • package encoding
    Definition Classes
    sink
  • package binary
    Definition Classes
    encoding
  • package csv
    Definition Classes
    encoding
  • package macros
    Definition Classes
    encoding
  • DataTypeEncodingAnnotation
  • RecordFieldExtractor

package macros

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait DataTypeEncodingAnnotation extends Annotation with StaticAnnotation

    A data type annotation that can influence the way their values are encoded, used by annotating case class member types, e.g.

    A data type annotation that can influence the way their values are encoded, used by annotating case class member types, e.g.

    case class ExampleRow(
      name: String @MaxLength(100),
      countryCode: Option[String] @FixedLength(2, truncate = false),
      salary: BigDecimal @DecimalEncoding(18, 10)
    )

    It is up to specific encoders to actually take these annotations into account and alter encoding based on their presence.

Ungrouped