OrioleDB

active

by Supabase (OrioleDB team) · since 2021 · also known as Oriole

Cloud-native storage engine for PostgreSQL with undo logs, no VACUUM bloat and row-level WAL.

relationalextensionopen source (permissive)emerging

Overview

OrioleDB is a table access method for PostgreSQL that replaces the heap with an index-organized, copy-on-write design: undo logs instead of dead tuples, page-level compression, lock-free in-memory page access and row-level WAL that suits replication and S3-backed storage. It aims to fix Postgres' classic pain points (VACUUM, bloat, buffer contention, write amplification) without forking the SQL layer, though today it still requires a set of patches to PostgreSQL 17 that are being upstreamed. Supabase acquired the project in 2024 and launched it as a public beta on Supabase in October 2026, explicitly not yet recommended for production.

Strengths & trade-offs

Strengths

  • +Undo-log MVCC eliminates table bloat and routine VACUUM
  • +Index-organized tables with page-level compression cut storage
  • +Lock-free page access scales better on many-core machines
  • +Row-level WAL reduces write amplification and enables S3-native storage
  • +Keeps full PostgreSQL SQL and extension compatibility at the query layer

Trade-offs

  • −Still beta; not recommended for production by its own maintainers
  • −Requires a patched PostgreSQL build rather than stock Postgres
  • −Some index types and features are not yet supported on OrioleDB tables
  • −Small operational track record

Great for

  • +Write-heavy Postgres OLTP suffering from bloat
  • +Evaluating next-generation Postgres storage on Supabase
  • +High-concurrency workloads on large multi-core servers

Think twice for

  • −Production systems needing proven stability today
  • −Managed Postgres services other than Supabase
  • −Workloads relying on unsupported index access methods

Capabilities

Native or official first-party support · 9 of 25 tracked

✓Transactions
✓Joins
✓Secondary indexes
✓JSON
✓Triggers
✓Stored procedures
✓Durable persistence
✓Compression
✓Role-based access
–Full-text search
–Vector search
–Geospatial
–Change data capture
–Materialized views
–TTL / expiry
–Pub/Sub
–Columnar storage
–In-memory
–Encryption at rest
–Time travel
–Branching
–Online schema changes
–Streaming ingest
–Offline sync
–Runs in WebAssembly

Scale & consistency

Comfortable data size
Medium · ≤ 10 TB
Horizontal scaling
None
Multi-region
Read replicas
Transactions
Full ACID
Consistency
Strong
Schema
Strict
Architecture
Single node, Primary replica, Shared storage
Query languages
SQL, PL/pgSQL

Single-primary Postgres scaling; experimental S3 mode decouples storage.

Deployment

Self-hosted Vendor-managed cloud Serverless Embedded Edge Kubernetes operator

Ecosystem

compatible withPostgreSQL
apis & protocolsPostgreSQL wire protocol
client languagesC, Java, Python, JavaScript, Go, Rust

Alternatives to OrioleDB

Compare all→
PostgreSQLRelational93.2

The extensible, standards-first open-source relational database.

orioledb vs postgresql →
NeonRelational30.4

Serverless Postgres with copy-on-write branching and scale-to-zero, now part of Databricks.

orioledb vs neon →
SupabaseRelational54.3

Open-source Postgres backend platform: database, auth, storage, realtime and edge functions in one project.

orioledb vs supabase →
YugabyteDBRelational32.7

Apache-licensed distributed SQL that reuses the PostgreSQL query layer on a Raft-replicated storage engine.

orioledb vs yugabytedb →
Postgres ProRelational0.0

Russian commercial PostgreSQL distribution with multimaster, 64-bit XIDs and compressed storage.

orioledb vs postgres-pro →
Progress OpenEdgeRelational20.4

Integrated RDBMS plus ABL 4GL application platform behind thousands of ERP and vertical business apps.

orioledb vs progress-openedge →

OrioleDB FAQ

What is OrioleDB?

OrioleDB is a relational database by Supabase (OrioleDB team), first released in 2021. OrioleDB is a table access method for PostgreSQL that replaces the heap with an index-organized, copy-on-write design: undo logs instead of dead tuples, page-level compression, lock-free in-memory page access and row-level WAL that suits replication and S3-backed storage. It aims to fix Postgres' classic pain points (VACUUM, bloat, buffer contention, write amplification) without forking the SQL layer, though today it still requires a set of patches to PostgreSQL 17 that are being upstreamed. Supabase acquired the project in 2024 and launched it as a public beta on Supabase in October 2026, explicitly not yet recommended for production.

Is OrioleDB open source?

Yes. OrioleDB is open source. License: Apache License 2.0.

Does OrioleDB support ACID transactions?

Yes. OrioleDB supports full ACID transactions, with strong consistency.

Does OrioleDB scale horizontally?

OrioleDB does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at medium scale (≤ 10 TB). It supports cross-region read replicas.

How can I run OrioleDB?

You can self-host it and use the vendor's managed cloud. Managed offerings include Supabase (OrioleDB public beta).

What is OrioleDB best for?

OrioleDB is a strong fit for write-heavy Postgres OLTP suffering from bloat, evaluating next-generation Postgres storage on Supabase and high-concurrency workloads on large multi-core servers. Think twice for production systems needing proven stability today.

What are the best alternatives to OrioleDB?

Common alternatives to OrioleDB include PostgreSQL, Neon, Supabase, YugabyteDB and Postgres Pro. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.

How popular is OrioleDB?

OrioleDB ranks #287 of 844 databases on the WhichDB Score (11.1/100), and #91 among relational databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.