DEV.co
Open-Source Databases · xtdb

xtdb

XTDB is an open-source immutable SQL database that tracks data changes over time, allowing you to audit the full history and query any point in the past. It supports both SQL and XTQL (its bitemporal dialect) and is designed for compliance-heavy applications that need reliable time-travel queries.

Source: GitHub — github.com/xtdb/xtdb
3k
GitHub stars
189
Forks
Clojure
Primary language
MPL-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryxtdb/xtdb
Ownerxtdb
Primary languageClojure
LicenseMPL-2.0 — OSI-approved
Stars3k
Forks189
Open issues710
Latest releasev2.1.0 (2025-12-01)
Last updated2026-07-07
Sourcehttps://github.com/xtdb/xtdb

What xtdb is

XTDB is a Clojure-based columnar database built on Apache Arrow with a log-centric distributed architecture. It implements SQL:2011 bitemporal semantics (system time and valid time) over the Postgres wire protocol, supporting schema-free documents with ACID guarantees and designed for cloud object storage.

Quickstart

Get the xtdb source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/xtdb/xtdb.gitcd xtdb# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Data Compliance & Audit Requirements

Applications requiring immutable audit trails, regulatory reporting (GDPR, HIPAA, SOX), and the ability to reconstruct database state at any past point in time without snapshots or backups.

Temporal & Bitemporal Reporting

Systems that separate 'when data changed' (system time) from 'when it was valid in business logic' (valid time), such as insurance, financial products, or healthcare where retroactive corrections and effective dating are critical.

Cloud-Native Document Databases with Strong Consistency

Applications needing schema-flexible data storage with full ACID semantics, deployed on cloud object storage (S3, GCS), and requiring time-travel queries across distributed nodes.

Implementation considerations

  • Bitemporal modeling requires upfront domain analysis—plan for 'system time' (when changes occur) and 'valid time' (when changes become true in business logic) semantics before schema design.
  • XTDB is built on Apache Arrow and designed for cloud object storage; plan infrastructure around S3/GCS and understand columnar storage implications for your query patterns.
  • The recent v2.1.0 release (Dec 2025) indicates active development; review migration path if adopting a newer major version and ensure test coverage for bitemporal queries.
  • Open issues (710) suggest ongoing development; prioritize critical issues and roadmap alignment with your compliance/audit timeline before production commitment.
  • Requires JVM runtime and operational familiarity with distributed systems (logs, ACID columnar engines); factor in DevOps and Clojure expertise for troubleshooting.

When to avoid it — and what to weigh

  • High-Throughput Real-Time Analytics — If you need sub-millisecond latency or extremely high write throughput (millions of inserts/sec), XTDB's immutable and bitemporal design may not be optimized for that workload. Consider purpose-built OLAP engines.
  • Simple CRUD with No Temporal Requirements — If your application is a straightforward CRUD system with no compliance, audit, or time-travel needs, XTDB introduces unnecessary architectural complexity and operational overhead.
  • Vendor Lock-in Risk Aversion — While open source and under MPL-2.0, XTDB is a young ecosystem (3k stars, 8 years old) with smaller community adoption than PostgreSQL or MySQL. Evaluate long-term support dependencies.
  • Team Unfamiliar with Clojure or Functional Paradigms — XTDB is written in Clojure and assumes operational familiarity with JVM-based systems and distributed log architectures. Onboarding teams without that background may be slow.

License & commercial use

XTDB is licensed under Mozilla Public License 2.0 (MPL-2.0), an OSI-approved copyleft license. Derivative works and modifications must be made available under MPL-2.0; pure linking via network APIs or embedded use may have different obligations—review MPL-2.0 Section 3.3 (Larger Works) carefully.

MPL-2.0 permits commercial use of XTDB itself, but requires disclosure of source code modifications under MPL-2.0. If you modify XTDB's core, those modifications must be open-sourced. Using XTDB unmodified in a commercial product is permitted. Contact JUXT ([email protected]) or legal counsel to clarify obligations for your specific deployment and any custom extensions.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

No security audit or CVE history disclosed in data. Standard JVM security considerations apply (keep dependencies patched). MPL-2.0 requires source disclosure of modifications, which aids transparency but complicates proprietary extensions. Bitemporal design may reduce certain audit log tampering risks due to immutability, but does not replace encryption, access control, or network security. Evaluate threat model around cloud object storage access and JVM heap memory.

Alternatives to consider

PostgreSQL with temporal extensions (temporal tables, pgaudit)

Mature, widely adopted, strong community. Temporal table support (SQL:2011 compatible) available via extensions; immutability and audit via pgaudit. Lower barrier to team adoption but less integrated bitemporal semantics.

Datomic (Cognitect)

Similar immutable, time-travel philosophy; commercial Clojure database with stronger enterprise support. Higher cost; different query model (Datalog vs. SQL); better for teams already in Clojure ecosystem.

ClickHouse or Apache Druid

Columnar, cloud-native engines for immutable fact tables and historical analytics. Not designed for bitemporal semantics or ACID transactions; better for append-only analytics rather than operational compliance.

Software development agency

Build on xtdb with DEV.co software developers

XTDB is a strong fit for applications requiring immutable audit trails, bitemporal reporting, and regulatory compliance. Connect with our team to assess your temporal data requirements and production readiness.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

xtdb FAQ

Can I use XTDB in a commercial product?
Yes, using XTDB unmodified is permitted under MPL-2.0. If you modify XTDB's code, those changes must be open-sourced under MPL-2.0. Contact JUXT ([email protected]) for clarification on your specific use case.
Do I need to learn Clojure to use XTDB?
No. XTDB exposes SQL and XTQL over the Postgres wire protocol, so standard SQL clients work. However, operational troubleshooting and custom server-side logic may require Clojure and JVM familiarity.
Is XTDB production-ready?
XTDB v2.1.0 is actively maintained and suitable for production compliance/audit workloads. Review the 710 open issues and roadmap to ensure your use case is stable. Consider a pilot before mission-critical deployments.
How does XTDB differ from a regular database with audit tables?
XTDB's bitemporal design natively separates system time (when changes occurred) from valid time (when those changes became true in business logic), and all queries can time-travel. Traditional audit tables require manual logic and separate queries.

Work with a software development agency

From first prototype to production, DEV.co delivers software development services around tools like xtdb. Our software development agency staffs experienced software developers and web developers for custom software development, web development, integrations, and ongoing support across open-source databases and beyond.

Evaluate XTDB for Your Compliance Stack

XTDB is a strong fit for applications requiring immutable audit trails, bitemporal reporting, and regulatory compliance. Connect with our team to assess your temporal data requirements and production readiness.