git404hub

what is ferrodruid fr?

abyo-software/ferrodruid — explained in plain English

Analysis updated 2026-05-18

0RustAudience · developerComplexity · 5/5LicenseSetup · hard

tl;dr

A Rust-native, single-binary reimplementation of Apache Druid, letting teams run a real-time analytics database without Java, ZooKeeper, or a separate coordination service.

vibe map

mindmap
  root((FerroDruid))
    What it does
      Rust rebuild of Druid
      Real time OLAP queries
      Single binary option
    Tech stack
      Rust
      openraft
      Kafka ingestion
      SQLite metadata
    Use cases
      Replace Druid cluster
      Check query compatibility
      Deploy via cloud image
    Audience
      Backend developers
      Data infra teams
    Deployment
      AWS Marketplace AMI
      Helm chart
      Terraform module
    Security
      mTLS between roles
      Auth on by default

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Replace a multi process Apache Druid cluster with a single lightweight binary for real time analytics.

VIBE 2

Check a log of existing Druid queries against ferro-logcompat to see compatibility before migrating.

VIBE 3

Run a real time OLAP database without needing Java, ZooKeeper, or a separate metadata store.

VIBE 4

Deploy a Druid-compatible database through an AWS Marketplace AMI, container image, or Terraform module.

what's the stack?

RustSQLKafkaSQLiteAWSHelmTerraformmTLS

how it stacks up fr

abyo-software/ferrodruid04amanrajj/netwatch0xr10t/pulsefi
Stars000
LanguageRustRustRust
Setup difficultyhardmoderatehard
Complexity5/53/54/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · hard time til it works · 1h+

Requires building from Rust source with cargo, and cross-role mTLS needs certificates generated before the multi-binary cluster mode works.

Business Source License restricts some commercial and production uses rather than granting fully open permissions like MIT or Apache.

in plain english

FerroDruid is a database written in Rust that aims to work the same way as Apache Druid, a system used for storing and querying large amounts of time-stamped data in real time. The project is not made by or connected to the Apache Software Foundation. It is an independent rebuild of the public Druid data formats and network protocols, written from scratch. The main selling point is simplicity of deployment. A standard Druid setup needs six separate Java processes plus a coordination service and a separate metadata database. FerroDruid can run the whole system as one single compiled binary, with its own built in coordination using a library called openraft, so there is no Java runtime and no external coordination service to install. It can also run as six separate binaries, one per role, for larger setups that want the pieces split apart. The project includes a compatibility checker called ferro-logcompat, which reads a log of past Druid queries and reports which ones FerroDruid can already handle, which are partially supported, and which are not supported at all. It runs locally, does not touch your live Druid cluster, and does not send your query data anywhere. Supported features include the common SQL clauses such as SELECT, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT and OFFSET, along with several Druid specific SQL time and string functions. It also implements all eight of Druid's native query types in single binary mode, with four of them working end to end when running as six separate role binaries. When roles talk to each other over the network, encrypted and verified connections are required by default. FerroDruid ships prebuilt images and deployment tools through AWS Marketplace, including an AMI, a container image, a Helm chart and a Terraform module. The license is BUSL-1.1, which restricts some commercial use rather than being fully open license, and the project documents known limitations and version by version compatibility results openly in its docs folder.

prompts (copy fr)

prompt 1
Show me how to build and run FerroDruid in single binary mode with SQLite metadata and local file storage.
prompt 2
Explain how ferro-logcompat classifies my Druid broker query log as supported, partial, or unsupported.
prompt 3
Walk me through setting up the six role classic FerroDruid topology with mTLS enabled between roles.
prompt 4
What SQL functions and native query types does FerroDruid support compared to Apache Druid?
prompt 5
Help me generate cross role certificates for FerroDruid using ferrodruid-migrate gen-cross-role-certs.

Frequently asked questions

what is ferrodruid fr?

A Rust-native, single-binary reimplementation of Apache Druid, letting teams run a real-time analytics database without Java, ZooKeeper, or a separate coordination service.

What language is ferrodruid written in?

Mainly Rust. The stack also includes Rust, SQL, Kafka.

What license does ferrodruid use?

Business Source License restricts some commercial and production uses rather than granting fully open permissions like MIT or Apache.

How hard is ferrodruid to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is ferrodruid for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.