← Back to Glossary

HTAP

HTAP (Hybrid Transactional/Analytical Processing) describes database systems designed to handle both transactional (OLTP) and analytical (OLAP) workloads on the same data, without a separate ETL pipeline moving data between two systems.

Overview

Most architectures split transactional and analytical workloads across two different systems: an OLTP database (like Postgres or MySQL) handles fast, high-concurrency reads and writes of individual records, while a separate OLAP data warehouse handles large analytical scans, fed by periodic ETL pipelines. HTAP systems aim to collapse that split, running both kinds of workload against the same underlying data, so analytics reflect transactional changes immediately rather than after the next ETL batch runs.

Why it's hard

OLTP and OLAP workloads have conflicting storage preferences: OLTP favors row-oriented storage for fast single-record lookups and updates, while OLAP favors columnar storage for fast scans across many rows. HTAP systems typically solve this by maintaining both a row store for transactions and a columnar store for analytics internally, keeping them in sync automatically, or by using storage engines flexible enough to serve both patterns reasonably well.

Examples

Systems like TiDB, SingleStore, and CockroachDB (with analytical extensions) are commonly described as HTAP databases. Some architectures achieve a similar effect by pairing a transactional database with change data capture (CDC) into an analytical store, trading true single-system HTAP for lower operational complexity.

Where DuckDB and MotherDuck fit

DuckDB is an OLAP engine — it's optimized for analytical scans and isn't designed to serve high-concurrency transactional writes the way an OLTP database is. Rather than being an HTAP system itself, DuckDB and MotherDuck are commonly used as the analytical half of an HTAP-like architecture: transactional data lives in Postgres or another OLTP system, and is replicated or loaded (via CDC, scheduled exports, or direct queries against the OLTP database) into DuckDB or MotherDuck for fast analytical querying, keeping the two workloads on systems each is well suited to.

Related terms

FAQS

HTAP stands for Hybrid Transactional/Analytical Processing — database systems designed to serve both fast transactional operations (OLTP) and large analytical queries (OLAP) against the same data.

TiDB, SingleStore, and CockroachDB (with its analytical extensions) are commonly cited examples of HTAP systems that aim to serve both transactional and analytical workloads within one database.

No. DuckDB is an OLAP engine optimized for analytical scans rather than high-concurrency transactional writes. It's typically paired with an OLTP database, receiving data via replication, CDC, or scheduled loads, rather than serving transactional workloads itself.