ksqlDB
maintenanceby Confluent · since 2017 · also known as KSQL
Confluent's SQL layer over Kafka Streams, still supported but superseded by Flink SQL for new work.
maintenance. Confluent recommends Flink for new stream-processing workloads; ksqlDB remains supported for existing apps and ships with Confluent Platform 8.x.
Overview
ksqlDB lets you declare streams and tables over Kafka topics in SQL, running persistent queries on Kafka Streams with state in RocksDB and changelog topics, plus pull queries against materialized tables. It made stream processing approachable for Kafka users from 2017 onward. Confluent now recommends Confluent Platform for Apache Flink for new stream-processing workloads and keeps ksqlDB fully supported for existing applications, shipping it with each Confluent Platform release (8.4 in October 2026). Choose it only if you already run it; otherwise evaluate Flink SQL, RisingWave or Materialize.
Strengths & trade-offs
Strengths
- +SQL over Kafka topics with no separate cluster for state storage
- +Push and pull queries over materialized tables
- +Kafka Connect integration for sources and sinks
- +Mature, well-documented, and supported by Confluent
Trade-offs
- −Strategic focus has moved to Flink; little new feature work
- −Tightly coupled to Kafka; join and windowing semantics are limited
- −Confluent Community License forbids offering it as a SaaS
- −Query rebalancing and schema evolution can be painful
Great for
- +Existing Kafka stream-transformation pipelines
- +Simple filtering, enrichment and aggregation of topics
Think twice for
- −New stream-processing projects (consider Flink SQL or RisingWave)
- −Complex multi-way joins and ad-hoc queries
Capabilities
Native or official first-party support · 6 of 25 tracked
Scale & consistency
- Comfortable data size
- Medium · ≤ 10 TB
- Horizontal scaling
- Native
- Multi-region
- No
- Transactions
- None
- Consistency
- Eventual
- Schema
- Strict
- Architecture
- Distributed, Client server
- Query languages
- ksqlDB SQL
Scales with Kafka partitions; state in RocksDB backed by changelog topics.
Deployment
available on · AWS · Google Cloud · Azure
Ecosystem
Alternatives to ksqlDB
An Apache-licensed, Postgres-compatible streaming database that stores state on S3 and writes Iceberg.
ksqldb vs risingwave →A Postgres-compatible operational data warehouse that keeps SQL views incrementally up to date.
ksqldb vs materialize →A single C++ binary for streaming SQL, built on ClickHouse's engine with streams and windows.
ksqldb vs timeplus-proton →A Rust stream processor with SQL pipelines, now owned by Cloudflare and powering Cloudflare Pipelines.
ksqldb vs arroyo →An incremental SQL engine grounded in DBSP theory that updates any SQL query from changes only.
ksqldb vs feldera →The commercial, enterprise-hardened distribution of Apache Ignite for low-latency SQL and compute.
ksqldb vs gridgain →ksqlDB FAQ
What is ksqlDB?
ksqlDB is a relational database by Confluent, first released in 2017. ksqlDB lets you declare streams and tables over Kafka topics in SQL, running persistent queries on Kafka Streams with state in RocksDB and changelog topics, plus pull queries against materialized tables. It made stream processing approachable for Kafka users from 2017 onward. Confluent now recommends Confluent Platform for Apache Flink for new stream-processing workloads and keeps ksqlDB fully supported for existing applications, shipping it with each Confluent Platform release (8.4 in October 2026). Choose it only if you already run it; otherwise evaluate Flink SQL, RisingWave or Materialize.
Is ksqlDB open source?
Not in the OSI sense. ksqlDB is source-available: you can read the code, but the license restricts some uses, typically offering it as a competing managed service. License: Confluent Community License.
Does ksqlDB support ACID transactions?
No. ksqlDB does not provide ACID transactions; its consistency model is eventual.
Does ksqlDB scale horizontally?
ksqlDB scales horizontally out of the box, with built-in sharding or partitioning. It is comfortable at medium scale (≤ 10 TB).
How can I run ksqlDB?
You can self-host it and use the vendor's managed cloud. Managed offerings include Confluent Cloud ksqlDB. It is available on AWS, Google Cloud and Azure.
What is ksqlDB best for?
ksqlDB is a strong fit for existing Kafka stream-transformation pipelines; and simple filtering, enrichment and aggregation of topics. Think twice for new stream-processing projects (consider Flink SQL or RisingWave).
What are the best alternatives to ksqlDB?
Common alternatives to ksqlDB include RisingWave, Materialize, Timeplus Proton, Arroyo and Feldera. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
Is ksqlDB still maintained?
ksqlDB is in maintenance mode. Confluent recommends Flink for new stream-processing workloads; ksqlDB remains supported for existing apps and ships with Confluent Platform 8.x.
How popular is ksqlDB?
ksqlDB ranks #247 of 844 databases on the WhichDB Score (13.7/100), and #78 among relational databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.