Перейти к основному содержимому
Перейти к основному содержимому

Миграция с PostgreSQL на ClickHouse

Почему использовать ClickHouse вместо Postgres?

TLDR: Потому что ClickHouse разработан для быстрой аналитики, особенно для запросов GROUP BY, как OLAP база данных, в то время как Postgres является OLTP базой данных, предназначенной для транзакционных рабочих нагрузок.

OLTP, или онлайн-транзакционная обработка баз данных, предназначены для управления транзакционной информацией. Основная цель этих баз данных, классическим примером которых является Postgres, заключается в том, чтобы гарантировать, что инженер сможет отправить блок обновлений в базу данных и быть уверенным, что он будет — в целом — либо успешным, либо неудачным. Эти виды транзакционных гарантий с ACID свойствами являются основной задачей OLTP баз данных и огромным преимуществом Postgres. Учитывая эти требования, OLTP базы данных обычно сталкиваются с ограничениями производительности при использовании для аналитических запросов по большим наборам данных.

OLAP, или онлайн-аналитическая обработка баз данных, предназначены для удовлетворения этих потребностей — управления аналитическими рабочими нагрузками. Основная цель этих баз данных заключается в том, чтобы инженеры могли эффективно выполнять запросы и агрегировать по обширным наборам данных. Реальные OLAP системы, такие как ClickHouse, позволяют проводить этот анализ по мере поступления данных в реальном времени.

Для более детального сравнения смотрите этот блог пост.

Чтобы увидеть потенциальные различия в производительности между ClickHouse и Postgres при аналитических запросах, смотрите Переписывание запросов PostgreSQL в ClickHouse.


Начните руководство по миграции PostgreSQL здесь.