Redpanda, read like Kafka.
Basalt speaks the Kafka protocol to your Redpanda cluster. Same consumer groups, same offsets, same ordering, with nothing extra to run.
Basalt speaks the Kafka protocol to your Redpanda cluster. Same consumer groups, same offsets, same ordering, with nothing extra to run.
Basalt joins Redpanda as a standard consumer group. Partitions are read in order and offsets commit only after the write is durable. Schemas are read from Redpanda's built-in Schema Registry when it is enabled.
Give Basalt your broker addresses and a SASL user. It works with self-hosted clusters, Redpanda Serverless and BYOC.
# connect clickstream from Redpanda Serverless basalt source add clicks --redpanda clickstream --sasl scram-sha-256
Write plain SQL over the source. Basalt keeps the view current with every record and tracks lineage back to the topic, partition and offset.
CREATE MATERIALIZED VIEW revenue_by_min AS SELECT date_trunc('minute', ts) AS minute, currency, sum(amount) AS revenue, count(*) AS payments FROM payments WHERE status = 'captured' GROUP BY 1, 2;
Every view is an endpoint the moment it exists. Call it over REST, connect with any Postgres client, or use the SDK from your app.
curl https://api.basalt.dev/v1/views/revenue_by_min?limit=5 \ -H "Authorization: Bearer $BASALT_TOKEN"
Offsets commit with the write, so restarts and rebalances never double-count.
Avro and Protobuf subjects are read from Redpanda's registry and typed on arrival.
Works with Redpanda Serverless, BYOC and self-hosted clusters.
Rewind to any offset or timestamp and rebuild a view from the topic.