---
title: "HTAP"
description: "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."
canonical: "https://motherduck.com/glossary/htap/"
related:
  - title: "DuckLake Architecture Deep Dive"
    url: "https://motherduck.com/blog/ducklake-architecture-deep-dive/"
  - title: "Hypertenancy | MotherDuck Docs"
    url: "https://motherduck.com/docs/concepts/hypertenancy/"
  - title: "Why web developers should care about analytical databases"
    url: "https://motherduck.com/blog/why-web-developers-should-care-about-analytical-databases/"
gated_asset:
  title: "DuckLake on MotherDuck"
  url: "https://motherduck.com/product/ducklake/"
---

# 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.