Lakestream
Specification

Specification

Lakestream is specified by two documents: the Storage Spec, which defines format version 3, and the Materialization Spec.

Lakestream is an open API and specification for stream storage on object storage, with a stream materialization framework that defines how a stream becomes a lakehouse table. Ursa implements it as a storage engine; Ursa for Apache Kafka is a Kafka distribution built on it. Both are open source under Apache 2.0.

The specifications

SpecificationCoversVersionStatus
Lakestream Storage SpecWAL objects, compacted objects, the offset index, and the metadata store modelFormat version 3Complete
Lakestream Materialization SpecThe policy model for how a stream becomes a lakehouse tableDescribes lakestream-api 1.0.0Released
Implementation statusWhat each implementation supports against both specs——

How to read them

Both specifications state requirements with uppercase keywords, interpreted per BCP 14 (RFC 2119, RFC 8174).

Conformance is stated by role, not by implementation as a whole. A system conforms for the roles it implements:

  • Storage Spec — Reader, Writer, Compactor, and Catalog. See Conformance.
  • Materialization Spec — Resolver and Materializer. See Conformance.

How the specifications change

Changes to either specification go through Lakestream Improvement Proposals (LIPs), tracked at openlakestream/lips.

API and implementations

Protocol integration

Kafka record validation, producer state, and protocol errors stay in the Kafka integration; they are not part of these specifications. See Appendix A: Kafka binding in the Storage Spec.