Use Cases

One Database.
Every Workload.

From a Raspberry Pi running predictive maintenance on factory floors to hyperscale AI platforms processing millions of embeddings per second - Absolute DB handles it all without reaching for another tool.

🤖
Use case 01

AI & Machine Learning Platforms

The first database built for the AI era from the ground up - not retrofitted. Store, search, and reason over vectors, documents, and structured data in a single query, without stitching together three separate systems.

  • Vector similarity search: HNSW index with sub-0.1 ms top-10 retrieval. Matryoshka adaptive dimensions — OpenAI text-embedding-3 compatible truncation with no re-indexing.
  • Sparse vectors (SPLADE / BM25-sparse): up to 30,000 dims, 1,000 non-zeros/vector, inverted index with O(nnz) merge-scan — learned sparse model support out of the box.
  • Hybrid search: combine BM25 full-text with dense vector cosine using RRF (Reciprocal Rank Fusion) in one SQL query — no orchestration layer needed.
  • RAG pipelines: chunk, embed, and retrieve in a single workflow. Native MCP server (JSON-RPC 2.0) exposes vector_search, fts_search, rag_query tools directly to AI agents.
  • NL2SQL: NL2SQL(question, schema_context) — in-database natural language to SQL conversion, offline-capable, no external API call required.
  • Agent memory: episodic + semantic memory tiers with TTL and automatic consolidation for long-running LLM agents.
sql - hybrid search: BM25 + vector cosine in one query
SELECT id, title, HYBRID_SEARCH('customer refund policy', embedding_col) AS score
FROM knowledge_base
ORDER BY score DESC
LIMIT 5;

-- Natural language to SQL — in-database, offline-capable
SELECT NL2SQL('show me top customers by revenue this quarter',
              'orders(customer_id, total, created_at)') AS sql_query;
Sub-0.1 ms top-10 vector search • Sparse vectors 30K dims • ColBERT MaxSim • Native MCP server
Use case 02

Real-time Streaming Analytics

Continuous query processing on live data streams — no Kafka, no Flink, no separate streaming platform. Define a streaming view once and the database maintains it continuously, pushing results as they change.

  • CREATE STREAMING VIEW: define a continuous query as a SQL view — Absolute DB runs it perpetually with a 65,536-event ring buffer per view, sliding windows, and watermark out-of-order handling.
  • LISTEN/NOTIFY: publish-subscribe messaging baked into the wire protocol — Rails ActionCable, Django Channels, and any PostgreSQL real-time client connect without changes.
  • CDC streaming: WAL tap delivers INSERT/UPDATE/DELETE as Debezium-compatible JSON or Protobuf over WebSocket or gRPC — 100 MB ring buffer, at-least-once delivery.
  • 29.2 M notifications/sec: lock-free WebSocket write ring delivers live query results to browser clients at stock-exchange scale.
sql - continuous streaming view with sliding window
-- Define a live aggregation — updated continuously as events arrive
CREATE STREAMING VIEW order_rate_1min AS
  SELECT
    TIME_BUCKET('1 minute', event_at) AS bucket,
    COUNT(*)                           AS order_count,
    SUM(total_cents)                   AS revenue_cents
  FROM orders_stream
  WHERE event_at > NOW() - INTERVAL '5 minutes'
  GROUP BY bucket;

-- Subscribe to changes — delivered via NOTIFY or WebSocket
LISTEN order_rate_1min;
29.2 M notifications/sec • 65,536-event ring buffer • Sliding windows + watermarks
🕸️
Use case 03

Graph & openCypher Analytics

Property graph analytics and fraud detection alongside your relational data — no separate Neo4j deployment. openCypher queries work natively, providing a direct migration path from Neo4j without rewriting application logic.

  • openCypher support: MATCH, CREATE, RETURN, WHERE — Neo4j Cypher queries run unchanged, enabling live migration of graph workloads.
  • Native RELATE syntax: RELATE source → target AS edge_type PROPERTIES {...} — create typed edges with arbitrary key-value properties from any SQL context.
  • Graph algorithms: PageRank, community detection (Louvain), betweenness centrality, Dijkstra + A* shortest path — all built-in, no external library.
  • VecGraph: combine graph traversal with vector similarity in one query — ideal for recommendation engines, knowledge graphs, and AI context retrieval.
sql / cypher - fraud ring detection
-- openCypher: find all accounts within 2 hops of a flagged account
MATCH (a:Account {flagged: true})-[:TRANSFERRED_TO*1..2]->(b:Account)
RETURN b.id, b.balance
ORDER BY b.balance DESC;

-- Native graph: shortest path between two users
GRAPH SHORTEST_PATH FROM 42 TO 99 EDGE 'knows';
1.3 B traversals/sec • 1.25 M edge creates/sec • openCypher + RELATE in same DB
🔑
Use case 04

Enterprise Authentication (LDAP & OAuth2/OIDC)

Connect to your existing identity infrastructure without additional middleware. Pure C11 LDAP and JWT validation — no libldap, no external auth proxy, no additional attack surface. Auth0, Okta, Keycloak, Azure AD, and Google IdP supported out of the box.

  • LDAP / Active Directory: pure C11 LDAP v3 client — simple bind, subtree user DN search, group-to-role mapping (up to 16 rules). LDAPS (port 636) via native TLS 1.3. No libldap dependency.
  • OAuth2 / OIDC JWT: validate JWTs from Auth0, Okta, Keycloak, Azure AD, and Google. HS256, RS256, ES256 signature verification. Claims extraction (sub, iss, exp, role claim). JWKS key cache (16 keys).
  • Advisory locks for migration tools: pg_advisory_lock(key) / pg_advisory_unlock(key) / pg_advisory_try_lock(key) — shared + exclusive, session + transaction scoped. Direct compatibility with Flyway, Liquibase, Alembic, and golang-migrate.
  • RBAC + ABAC + RLS: role-based and attribute-based access control with row-level security — enforce data boundaries at the database layer, not the application layer.
conf - LDAP and JWT auth configuration
# LDAP / Active Directory
ldap_server = "ldaps://ad.corp.example.com:636"
ldap_base_dn = "DC=corp,DC=example,DC=com"
ldap_bind_dn = "CN=absdb-svc,OU=ServiceAccounts,DC=corp,DC=example,DC=com"
ldap_group_role_map = "CN=DBAdmins,... => admin; CN=DBReaders,... => readonly"

# OAuth2 / OIDC (Auth0 example)
jwt_issuer   = "https://your-tenant.auth0.com/"
jwt_audience = "https://api.yourapp.com"
jwt_role_claim = "https://yourapp.com/roles"
No libldap • No external auth proxy • Auth0 / Okta / Keycloak / Azure AD / Google
Use case 05

Data Quality for Regulated Industries

Enforce data quality at ingestion time — not after the fact. Built-in expectations, Welford online profiling, and quarantine queues give compliance teams real-time visibility without a separate data quality platform.

  • DQ_LEVEL enforcement: tag any column or table with DQ_LEVEL REJECT (block bad rows), WARN (log + pass), or QUARANTINE (route to _absdb_dq_quarantine for review) — enforced at the write path.
  • Welford online profiling: continuous mean and standard deviation calculated with zero additional storage cost. Column profiles visible in _absdb_dq_profiles with quality scores 0–100.
  • Data lineage (OpenLineage v1): column-level provenance tracks every transformation — absdb_lineage_of(table, col) shows the full upstream chain for GDPR impact analysis.
  • Data version control: CREATE DATABASE branch FROM main creates an instant zero-cost clone — run data quality checks on a branch before merging to production.
sql - data quality enforcement and profiling
-- Enforce quality at ingestion
ALTER TABLE patient_records
  ALTER COLUMN dob SET (dq_level = 'REJECT', dq_not_null = true),
  ALTER COLUMN mrn SET (dq_level = 'QUARANTINE', dq_unique = true);

-- View quality scores and anomalies
SELECT col_name, quality_score, null_pct, mean, stddev
FROM _absdb_dq_profiles
WHERE table_name = 'patient_records';

-- Review quarantined rows
SELECT * FROM _absdb_dq_quarantine WHERE table_name = 'patient_records';
REJECT / WARN / QUARANTINE • Welford online stats • OpenLineage v1 provenance
🏥
Use case 06

Healthcare & Life Sciences

HIPAA-compliant by default. PHI stays protected without compromising query performance - compliance is enforced at the database layer so your application code stays clean.

  • Automatic PHI tagging: mark columns as protected health information and every read and write is recorded in a tamper-evident audit trail.
  • Column-level AES-256-GCM encryption: SSN, date-of-birth, and diagnosis codes encrypted independently - a breach of one field exposes nothing else.
  • Row-level security: clinicians see only their own patients' records; researchers see only de-identified cohorts - enforced by the database, not the application.
  • Instant audit reports: comprehensive HIPAA access reports generated in seconds for any date range, ready for OCR compliance reviews.
sql - PHI tagging and HIPAA access report
ALTER TABLE patients ALTER COLUMN ssn SET (hipaa_phi = true);
ALTER TABLE patients ALTER COLUMN diagnosis_code SET (hipaa_phi = true);

SELECT * FROM absdb_hipaa_access_report('2026-01-01', '2026-03-31');
136 security tests • Zero failures • Every release
📡
Use case 07

IoT & Time-Series at the Edge

The only production-grade database that fits in 8 MB and runs on a Raspberry Pi Zero with 512 MB RAM. Gorilla delta-delta compression, BRIN indexes, and hypertables make it the ideal store for billions of sensor readings — on the device or in the cloud.

  • Gorilla delta-delta compression: 10:1 compression ratio for float time-series (temperature, vibration, pressure) — store 10× more sensor history in the same flash storage.
  • BRIN indexes: Block Range Index — 1,000× smaller than a B+Tree for monotonic timestamp columns. A year of sensor data indexed in kilobytes, not gigabytes.
  • Hypertables + continuous aggregates: automatic time-based chunk partitioning (minute/hour/day), 10 downsampling aggregates (FIRST, LAST, PERCENTILE), gap-fill with LOCF or LINEAR interpolation.
  • Genuinely tiny: 8 MB stripped binary — no runtime installation, no dependency resolution. ARM Cortex-A, x86 embedded, and WebAssembly from the same build.
  • Offline-first sync: local writes continue when connectivity drops; Raft-based replication syncs to cloud clusters when the connection returns, with automatic conflict resolution.
sql - sliding-window aggregate on sensor data
SELECT
  time_bucket('5 minutes', recorded_at) AS bucket,
  AVG(temperature)                       AS avg_temp,
  MAX(vibration_hz)                      AS peak_vibration
FROM machine_telemetry
WHERE recorded_at > NOW() - INTERVAL '1 hour'
GROUP BY bucket
ORDER BY bucket DESC;
~4 MB RAM at idle • ~230 KB server binary • No installation prerequisites
🚀
Use case 08

SaaS Platforms

Replace eight specialised database tools with one. Eliminate database sprawl before it starts - vector search, full-text, time-series, graph, and OLTP in a single deployment that your existing ORM already speaks.

  • Multi-tenancy: row-level security isolates tenant data at the database layer - no separate schema per tenant, no application-layer filtering that can be bypassed.
  • Drop-in compatibility: PostgreSQL wire protocol means existing drivers, ORMs, and tooling work on day one - no client code changes required.
  • Live query push: WebSocket subscriptions deliver changes to clients in real time at 14.9M+ notifications/sec - no polling, no message queue, no Redis pub/sub.
  • Compliance built-in: GDPR right-to-erasure, column-level data lineage, and tamper-evident audit logs for regulated SaaS without a compliance sidecar.
Works with Prisma, Django ORM, Rails ActiveRecord, Sequelize, JDBC, node-postgres, psycopg2 - no code changes
sql - tenant isolation with row-level security
-- Each tenant can only see their own rows - enforced by the database
CREATE POLICY tenant_isolation ON orders
  USING (tenant_id = current_setting('app.tenant_id')::uuid);

-- Live push to subscribed clients
SUBSCRIBE TO TABLE orders WHERE tenant_id = $1 AND status = 'pending';
🏢
Use case 09

Enterprise OLTP

Full ACID transactions, high availability, zero-downtime operations. All the capability of Oracle or enterprise PostgreSQL - without the licence tax, the mandatory consultants, or the weekend upgrade windows.

  • Full ACID transactions: snapshot isolation, savepoints, and full rollback - correct behaviour under every failure mode, verified by 168 distributed tests.
  • Raft-based high availability: automatic leader election and failover, zero data loss on node failure, read-only replicas for query offload.
  • Online schema changes: ALTER TABLE runs non-blocking in the background - production tables stay fully available during column additions, index builds, and type changes.
  • Continuous replication: streaming CDC to read replicas, disaster-recovery sites, and downstream consumers via Debezium-compatible JSON.
sql - ACID transaction with savepoints
BEGIN;
  INSERT INTO orders (customer_id, total) VALUES ($1, $2) RETURNING id;
  SAVEPOINT order_created;

  INSERT INTO order_items (order_id, sku, qty) VALUES ($3, $4, $5);

  -- Something went wrong with this item only
  ROLLBACK TO SAVEPOINT order_created;

  -- Retry with corrected data
  INSERT INTO order_items (order_id, sku, qty) VALUES ($3, $6, $5);
COMMIT;
≥ 650,000 inserts/sec • < 2 µs point query latency • Direct API
🧑‍💻
Use case 10

Developer Tools & Embedded Applications

The SQLite upgrade path that doesn't require a separate server. Embed Absolute DB in any C/C++ application with a two-line include - and get vector search, full-text, graph traversal, JSON, and time-series that SQLite simply doesn't have.

  • Zero configuration: open an in-process database with a single call - no server, no setup, no config file, no background process to manage.
  • Richer than SQLite: vector search, full-text BM25, graph traversal, JSONB, time-series aggregates, and full SQL:2023 support all built in.
  • Server mode on demand: expose the same embedded database as a PostgreSQL-compatible server with one flag change - your psql, pgAdmin, and Prisma clients connect immediately.
  • WASM target: compile to WebAssembly and run in the browser or Cloudflare Workers with IndexedDB persistence - same API, same SQL, same data.
c - embed Absolute DB in any C/C++ application
#include "absolute.h"

int main(void) {
    absdb_t *db;
    absdb_result_t *res;

    /* Open an in-process database - no server required */
    absdb_open(":memory:", &db);

    absdb_exec(db, "CREATE TABLE events (id INTEGER PRIMARY KEY, payload TEXT)");
    absdb_exec(db, "INSERT INTO events (payload) VALUES ('hello, world')");

    absdb_query(db, "SELECT * FROM events", &res);
    while (absdb_result_next(res)) {
        printf("id=%lld  payload=%s\n",
               absdb_result_int64(res, 0),
               absdb_result_text(res, 1));
    }
    absdb_result_free(res);

    /* Expose as a PostgreSQL-compatible server - one flag */
    /* absdb_serve(db, "0.0.0.0", 5433); */

    absdb_close(db);
    return 0;
}
Single header include • 8 MB binary • Zero runtime dependencies
🏠
Use case 11 · v8.3 "Bridge" preview

Shared Hosting — cPanel / WHMCS Surgical MariaDB Swap

Replace MariaDB on any cPanel host with Absolute DB in one click. The swap wizard live-replicates the existing MariaDB datadir, verifies parity via Merkle checksums, then atomically rebinds port 3306 in under 100 ms. Every PHP, Python, Node, Ruby, and Java application reconnects transparently — no code changes, no DSN changes, no driver changes. A 7-day rollback window and native WHMCS billing driver make it safe for shared-hosting operators and resellers.

  • Zero application-code changes — pure MySQL wire v10 compatibility
  • Sub-100 ms atomic flip from MariaDB to Absolute DB
  • Live logical replication via the MariaDB binlog during cut-over
  • 7-day rollback safety net — parked datadir preserved
  • WHMCS database-server driver auto-registered on swap completion
  • WORM audit trail of every swap step via _absdb_admin_log
8-step wizard • < 100 ms flip • 7-day rollback • WHMCS-native

See the full cPanel Swap Guide and the v8.3 architecture spec.

Ready to consolidate?

Stop managing eight databases. Use one.

Download the binary and have a working database in under two minutes - or talk to us about a deployment that fits your stack.