FerroDruid Container
Rust-native Druid-compatible OLAP container for Amazon EKS
When does this pay back?
Example: $5,000/month in managed observability spend
At $5,000/month in managed observability spend, a conservative 40% reduction is roughly $2,000/mo — gross avoided usage charge before the S4 software fee, EC2, and workload differences.
Estimate your savings
Enter your relevant monthly spend or usage for a rough estimate — no bill upload needed.
Container build of FerroDruid. Deploy the Apache-Druid-spec-compatible real-time OLAP database as a single Rust binary on Amazon EKS via the included Helm chart. Speaks the Druid REST API, native query JSON, and Druid SQL; reads Druid segment v9. No JVM, no ZooKeeper, no six-process control plane. Metered per pod-hour, forces an admin-password rotation on first login, and fails closed without a Marketplace entitlement.
A classic Apache Druid cluster needs six or more JVM processes plus ZooKeeper plus an external metadata database and 16 GB+ of RAM before it serves a single query; FerroDruid Container replaces all of that with a single Rust binary running as one EKS pod. It is the same binary as the AMI build and serves all eight native query types (timeseries, topN, groupBy, scan, search, segmentMetadata, dataSourceMetadata, timeBoundary); runs Druid SQL (SELECT, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT, 30+ functions, EXPLAIN PLAN FOR, an MSQ task endpoint, ~95% core SQL parity); exposes 40+ Druid-compatible REST endpoints; and reads Druid segment v9 (verified locally against segments written by Druid 31.0.2 and 35.0.1, and end-to-end from real AWS S3 deep storage: a Druid-31 segment, round-trip). The supported topology is a single node with SQLite metadata + local-filesystem deep storage; the Helm chart fails closed at template time on external metadata, external deep storage, `replicaCount>1`, and on injecting a paid product code into a source-available image. The admin account is force-rotated on first login (every endpoint returns 403 until rotated), and the paid container verifies entitlement via `RegisterUsage` at startup.
Highlights
Druid-spec wire-compatible (REST + native JSON + Druid SQL, segment v9) — existing Druid clients and queries work. Same binary as the AMI.
One container, no JVM / ZooKeeper / six-process control plane; sub-second boot on under 200 MB RAM. Deploys to Amazon EKS via the included Helm chart.
Per pod-hour metering, forced first-login password rotation, and fail-closed config: every endpoint returns 403 until the admin password is rotated, and the Helm chart refuses external metadata, external deep storage, `replicaCount>1`, and source-available-image-plus-paid-code mixtures at template time.
Why it's cheaper
Assumes a real-time OLAP backend at ~1k events/sec on an existing EKS cluster.
- Node vCPU / RAM (≈ m5.xlarge × 3)
- $525 / mo
- ZK Pod (≈ t3.medium)
- $30 / mo
- RDS PostgreSQL metadata
- $150 / mo
- Monthly total
- $705 / mo
- FerroDruid Pod (≈ m5.large + software fee)
- $120 / mo
- Monthly total
- $120 / mo
Sizing FerroDruid Container by ingest QPS
| Ingest QPS | Pod resource request | FerroDruid Pod cost | Total vs. Druid on EKS |
|---|---|---|---|
| ~100 events/s | 1 vCPU / 2 GB | $45 / mo | $45 / mo (Druid $400, −89%) |
| ~1k events/s | 2 vCPU / 4 GB | $120 / mo | $120 / mo (Druid $705, −83%) |
| ~10k events/s | 8 vCPU / 16 GB | $400 / mo | $400 / mo (Druid $1,800, −78%) |
Illustrative example. A minimal Apache Druid on EKS deploys broker / coordinator / historical / middleManager / overlord / router as six Pods, plus a ZooKeeper Pod and a RDS PostgreSQL metadata DB. FerroDruid Container provides the same wire-compatible API as a Rust single-process Pod, so the difference shows up directly in node cost. The EKS control plane fee is shared by both setups and therefore omitted.
Pricing model
Hourly per-pod software fee billed by AWS + the EC2 nodes in your own EKS cluster. No license keys; entitlement verified via Marketplace `RegisterUsage`.
Other S4 products
S4 — Squished S3
Transparent GPU S3-compression gateway
S4 Logs
Archive CloudWatch Logs to zstd S3
S4 Metrics
Govern CloudWatch metric cardinality