Streaming Ledger

Ververica Streaming Ledger is a library for Apache Flink allowing users to process event streams across multiple shared states/tables with Serializable ACID Semantics - the highest class of transactional consistency. With Ververica Streaming Ledger, you define a set of tables, connect streams of events that drive the transactions, and define flexible transaction logic that processes the events and accesses/updates various rows across tables, under full serializable transactional consistency.

Instead of operating on only a single key with a single operator at a time (like in vanilla Apache Flink and other stream processors), transactional functions operate consistently on multiple keys across multiple tables at a time. The same tables can be shared between various streams of events. All that without compromising performance or consistency.

../../_images/streaming-ledger.png

Availability

Ververica Ledger consists of the following two components:
  • A open source Ledger SDK available on GitHub, including the API and a serial runtime for local testing.
  • A parallel runtime for distributed execution of transactions is available as part of the River Edition of Ververica Platform.