---
title: Understand hypercore | Tiger Data Docs
description: How Tiger Data's hybrid row-columnar engine accelerates analytics while keeping ingest fast
---

Hypercore is Tiger Data‘s hybrid row-columnar storage engine. New data lands in the rowstore for fast inserts and updates, then automatically converts to the columnstore where analytical queries read fewer bytes and run faster. This conversion includes data compression of up to 98%, which dramatically cuts storage costs.

## How it works

Hypercore is a hybrid row-columnar storage engine in TimescaleDB. It is designed specifically for real-time analytics and powered by time-series data. The advantage of hypercore is its ability to seamlessly switch between row-oriented and column-oriented storage, delivering the best of both worlds:

![Hypertable with hypercore enabled: incoming rows are stored in the rowstore and automatically columnized into the columnstore in batches of up to 1000 values per column](/docs/_astro/hypertable-with-hypercore-enabled-light.C2P2rNDf_7VCLT.webp) ![Hypertable with hypercore enabled: incoming rows are stored in the rowstore and automatically columnized into the columnstore in batches of up to 1000 values per column](/docs/_astro/hypertable-with-hypercore-enabled-dark.CSPYbMj5_hrCeU.webp)

Hypercore solves the key challenges in real-time analytics:

- High ingest throughput
- Low-latency ingestion
- Fast query performance
- Efficient handling of data updates and late-arriving data
- Streamlined data management

Hypercore‘s hybrid approach combines the benefits of row-oriented and column-oriented formats:

- **Fast ingest with rowstore**: new data is initially written to the rowstore, which is optimized for high-speed inserts and updates. Real-time applications can handle rapid streams of incoming data, including upserts and late-arriving rows.

- **Efficient analytics with columnstore**: as the data cools, TimescaleDB automatically converts it to the columnstore. The columnar format enables fast scanning and aggregation. Multiple mechanisms keep queries fast:

  - [Chunk skipping](/docs/build/performance-optimization/improve-hypertable-performance/index.md) skips entire chunks that cannot match the query.
  - Vectorized execution evaluates aggregate functions directly on columnstore batches. Since 2.27.0, this path also covers queries whose `WHERE` clause uses non-vectorizable functions like `time_bucket()`, including continuous aggregate refreshes — yielding 30%–2× faster execution in many cases.
  - [Sparse indexes](/docs/build/performance-optimization/indexing/index.md) — `bloom` for equality and `minmax` for ranges — let the engine skip individual batches without decompressing them. Bloom indexes accelerate `SELECT`, `UPDATE`, `DELETE`, and `UPSERT` operations on compressed data.
  - Summary queries like `COUNT`, `MIN`, `MAX`, `FIRST`, and `LAST` read results straight from batch metadata.

- **Lower storage costs**: 90–98% compression in the columnstore reduces storage cost dramatically, without sacrificing query performance.

- **Fast modification of compressed data in columnstore**: just use SQL. TimescaleDB supports `INSERT`, `UPDATE`, `DELETE`, and `UPSERT` directly on the columnstore, with high-performance paths for each.

- **Full mutability with transactional semantics**: regardless of where data is stored, hypercore provides full ACID support. Like in a vanilla PostgreSQL database, inserts and updates to the rowstore and columnstore are always consistent and visible to queries as soon as they complete.

For an in-depth explanation of how hypertables and hypercore work, see the [Data model](/docs/learn/deep-dive/whitepaper#data-model/index.md).

## Get hands on

[Set up hypercore](/docs/build/columnar-storage/setup-hypercore/index.md)

[Enable and configure columnstore on your hypertables.](/docs/build/columnar-storage/setup-hypercore/index.md)

[Basic compression with hypercore](/docs/build/how-to/basic-compression/index.md)

[Quick-start guide for enabling compression.](/docs/build/how-to/basic-compression/index.md)

[Compression methods](/docs/learn/columnar-storage/compression-methods/index.md)

[How hypercore compresses your data under the hood.](/docs/learn/columnar-storage/compression-methods/index.md)

## Learn more

- [Improve query and upsert performance](/docs/build/performance-optimization/secondary-indexes/index.md): Segmenting and ordering columnstore data.
- [Convert continuous aggregates to the columnstore](/docs/build/continuous-aggregates/compression-on-continuous-aggregates/index.md): Compress aggregated data.
- [Troubleshoot hypercore](/docs/build/tips-and-tricks/troubleshoot-hypercore/index.md): Common issues and solutions.
- [Hypercore API overview](/docs/reference/timescaledb/hypercore/index.md): All columnstore functions and policies.
