The problem
A data pipeline describes how data should move and transform, but running one is only half the job. Results typically land as output files, or get pushed to a separate database, before anyone can actually query them, for a dashboard, another pipeline needing that data, or a person running SQL. Each hop is a system to operate and a boundary the data has to cross. FlareDB replaces this into a single system.How it works
One system for streams and tables
FlareDB is built around a unified streams-and-tables architecture:- Streams represent data in motion, the events flowing through a pipeline.
- Tables represent data at rest, materialized, persistent, and queryable state.
Write a pipeline
Using any Apache Beam SDK: Java, Python or Go, describe how your data should be transformed. Pipelines are standard Beam: no proprietary syntax, no FlareDB-specific pipeline API.FlareDB runs it
Submit the pipeline to a running FlareDB instance. FlareDB breaks the pipeline into stages, schedules them to run, and streams data through each transformation step on its Rust execution engine until the pipeline completes.Write results to tables
Add aFlareDbIO.write() step to persist your results as a named table. From there the data is queryable with standard SQL through flare sql, FlareDB’s interactive SQL shell, or any client speaking FlareDB’s SQL interface — and reusable as input to another Beam pipeline via FlareDbIO.read().
Capabilities
- Pipeline output is a table - results are written to a table. Query them with
SELECT,WHERE,COUNT(*)viaflare sql. - Pipelines compose through tables - one pipeline’s output table can be read as another pipeline’s input, without an intermediate storage layer.
- Arrow end to end - data is represented as Apache Arrow through pipeline execution, storage, and query execution.
- DataFusion query engine - SQL against FlareDB tables executes on Apache DataFusion.
flare sqlandFlareDbIO.read().fromQuery()use the same query path. - No vendor lock-in - FlareDB runs unmodified Apache Beam pipelines through the standard Beam portability layer, no FlareDB-specific API.
Get started
Quickstart
Install the CLI, start an instance, and run your first pipeline.
Run a Beam pipeline
Add the FlareDB runner to an existing Apache Beam project.
FlareDB I/O
Read from and write to FlareDB tables with the Beam I/O connector.
SQL shell
Query the local warehouse with the interactive SQL shell.