Hanzo Database
Real-time analytics database
Sub-second queries over billions of rows. Columnar storage, vectorized execution, and incremental materialized views. Built for product analytics, observability, and customer-facing dashboards.
Built for Analytics, Not Compromised by It
Time-series, events, metrics, traces — one engine.
Vectorized Execution
SIMD-accelerated columnar engine. Scan billions of rows per second per core. Push-down predicates and projection-only reads.
Incremental Materialized Views
Define rollups, aggregations, and joins as views. Hanzo Database keeps them fresh on every insert. No batch ETL.
High-Cardinality Metrics
Million-tag dimensions without downsampling. Per-user, per-device, per-experiment slicing — interactive at any scale.
Tiered Storage
Hot data on NVMe, warm on SSD, cold on object storage. Transparent migration based on age and access patterns. Pay for what you query.
PostgreSQL Wire
Drop-in for any psql-compatible client, BI tool, or ORM. Tableau, Metabase, Superset, dbt — they all just work.
Zero-Downtime Schema
Add columns, change types, alter partitioning live. Backfill in the background. Online DDL without read-your-write surprises.
Standard SQL. Real-Time Reads.
-- Wide event table, partitioned by hour
CREATE TABLE events (
ts TIMESTAMPTZ NOT NULL,
user_id UUID,
event TEXT,
properties JSONB
) PARTITION BY RANGE (ts);
-- Always-fresh per-user daily counts
CREATE INCREMENTAL MATERIALIZED VIEW dau AS
SELECT
date_trunc('day', ts) AS day,
user_id,
count(*) AS events
FROM events
GROUP BY 1, 2;
-- Sub-second over a billion rows
SELECT day, count(distinct user_id) AS dau
FROM dau
WHERE day >= now() - interval '30 days'
GROUP BY 1 ORDER BY 1;