Java Streams & Arrow
Kafka Streams 4.x compatible engine with columnar Arrow operators and schema serdes via krabka-streams-java.
krabka-streams-java is the Java client library for stream processing with Krabka. It exports the Kafka Streams API and adds native support for Confluent Schema Registry and Apache Arrow direct-memory processing. Minimum Java version is JDK 17.
Dependency Coordinates
Gradle / Maven
// Gradle Kotlin DSL
implementation("io.krabka:krabka-streams:1.3.0")
implementation("io.krabka:krabka-streams-columnar:1.3.0")
implementation("io.krabka:krabka-streams-schema-serde:1.3.0") Published Modules
| Artifact | Purpose |
|---|---|
| io.krabka:krabka-streams | Apache Kafka Streams API and Krabka defaults |
| io.krabka:krabka-streams-schema-serde | Avro, Protobuf, and JSON Schema serdes with non-blocking cache |
| io.krabka:krabka-streams-columnar | Apache Arrow direct memory batch processing & operators |
| io.krabka:krabka-streams-columnar-schema | Avro and Protobuf Arrow memory bridges |
| io.krabka:krabka-streams-test-utils | ColumnarTestDriver and SchemaRegistryStub helpers |
| io.krabka:krabka-streams-bom | Bill of Materials dependency constraints |
Direct Buffer JVM Requirement
Apache Arrow 19 requires this JVM option when accessing direct off-heap buffers:
--add-opens=java.base/java.nio=ALL-UNNAMED
Automatic Javadoc & Maven CI Publishing
The complete interactive Javadoc reference is built with Bazel/Gradle and published automatically on every release to GitHub Pages: