Warning: This document is for an old version of dA Platform. The latest version is v1.3.

Streaming Ledger

Note

The parallel runtime of dA Streaming Ledger is only available in the “River Edition” of dA Platform.

dA 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 dA 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.

Availability

dA 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 dA Platform.