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 csv
    Definition Classes
    encoding
  • CsvFileBuilder
  • CsvFormat
  • CsvRecordEncoder
  • CsvRecordStreamWriter
  • CsvTypeEncoder

class CsvFileBuilder[-R] extends StreamFileBuilder[R]

A CSV file builder.

R

Type of the records written to files being built. An implicit CsvRecordEncoder for the type must be available.

Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CsvFileBuilder
  2. StreamFileBuilder
  3. Logging
  4. BaseFileBuilder
  5. FileBuilder
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CsvFileBuilder(compression: Compression, bufferSizeBytes: Int = 4096, format: CsvFormat = CsvFormat.DEFAULT)(implicit arg0: CsvRecordEncoder[R])

    compression

    Compression to use.

    bufferSizeBytes

    Buffer size when writing to files.

    format

    CSV format settings.

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 build(): Option[File]

    Builds a data file from all the added records and flushes it to disk.

    Builds a data file from all the added records and flushes it to disk. The builder instance can no longer be used after calling this method.

    returns

    The resulting file if any records were added, None otherwise.

    Definition Classes
    StreamFileBuilderBaseFileBuilderFileBuilder
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. def createFile(): File
    Attributes
    protected
    Definition Classes
    StreamFileBuilderBaseFileBuilder
  8. def discard(): Unit

    Discards the file currently being built and closes the builder.

    Discards the file currently being built and closes the builder.

    Definition Classes
    StreamFileBuilderBaseFileBuilderFileBuilder
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. lazy val file: File
    Attributes
    protected
    Definition Classes
    BaseFileBuilder
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def getDataSize: Long

    Gets the current size of the data added to the file.

    Gets the current size of the data added to the file.

    Definition Classes
    StreamFileBuilderFileBuilder
  14. def getRecordCount: Long

    Gets the count of records currently written to the file.

    Gets the count of records currently written to the file.

    Definition Classes
    BaseFileBuilderFileBuilder
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. var isClosed: Boolean
    Attributes
    protected
    Definition Classes
    BaseFileBuilder
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. val log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. var recordsWritten: Long
    Attributes
    protected
    Definition Classes
    BaseFileBuilder
  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  28. def write(record: R): Unit

    Adds a record to the file.

    Adds a record to the file.

    Definition Classes
    StreamFileBuilderBaseFileBuilderFileBuilder

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from StreamFileBuilder[R]

Inherited from Logging

Inherited from BaseFileBuilder[R]

Inherited from FileBuilder[R]

Inherited from AnyRef

Inherited from Any

Ungrouped