DevOps-услуги · PostgreSQL & ClickHouse

PostgreSQL для транзакций.ClickHouse для аналитики.Один и тот же счёт SFS в конце месяца.

Две из лучших open-source баз данных в мире, поставленные как единый управляемый стек в Республике Молдова. PostgreSQL 16 для транзакционных нагрузок — заказы, счета, записи, движение склада. ClickHouse 24 для настоящей аналитики — логи, события, агрегированные отчёты по миллионам строк менее чем за секунду. Вы пишете запросы, мы держим кластер в строю 24/7, на русском или румынском.

Работаем с цифровыми винодельнями, отслеживающими сенсоры виноградника поминутно, с ритейл-сетями, обрабатывающими транзакции из десятков магазинов, с финтехом, готовящимся к требованиям НБМ и CNPF, с телекомами, мелющими миллиарды CDR-записей. У всех общая история: PostgreSQL как источник транзакционной истины, ClickHouse для мгновенных аналитических запросов. Мы построили это так, чтобы они могли жить вместе — реплицированными, мониторящимися и соответствующими Закону 133/2011 о защите персональных данных.

16PostgreSQLТекущая поддерживаемая версия
24ClickHouseС MergeTree и SSL
< 50 мсPG p50Для коротких запросов
< 1 сCH p95На миллиардах строк
Почему обе

PostgreSQL и ClickHouse не конкуренты. Они дополняют друг друга.

Большинство команд, пытающихся делать отчётность в PostgreSQL, рано или поздно упираются в запросы, длящиеся минутами. Большинство тех, кто начинает только с ClickHouse, понимают, что им всё равно нужен транзакционный store для OLTP. Наша рекомендация, проверенная десятками молдавских внедрений: PostgreSQL как источник истины (ACID, сложные join-ы, foreign keys), ClickHouse для read-heavy аналитики (компрессия 10x, MergeTree, мгновенные агрегации). Логическая репликация или CDC между ними через Debezium или pg_logical, не ломая ни одну из систем.

PostgreSQL — Источник истины

Самая зрелая реляционная БД с открытым кодом: ACID, нативный JSONB для документов, полнотекстовый поиск на русском и румынском, частичные и выражения индексы, мощные расширения (PostGIS для молдавских гео-данных, pg_trgm для нечёткого поиска, timescaledb для коротких time-series).

  • ACID-транзакции с serializable изоляцией
  • JSONB для полуструктурированных данных, GIN-индексы
  • Streaming-репликация + логическая репликация
  • Point-in-time бэкап с WAL archiving
OLTP · ACID · JSONB · PostGIS

ClickHouse — Аналитический движок

Колоночная OLAP-БД для агрегированной аналитики по большим наборам. Сжимает данные в 5-10 раз, сканирует миллиарды строк за секунды, поддерживает почти стандартный SQL с window-функциями и продвинутыми агрегациями. Для ритейл-отчётов, телеком CDR-аналитики, маркетинговой атрибуции.

  • LZ4 или ZSTD компрессия по колонкам
  • MergeTree с горизонтальным шардингом
  • Автоматические инкрементальные материализации
  • Нативная интеграция Kafka, Postgres, S3
OLAP · Columnar · Компрессия 10x · Kafka

Объединённый стек

PostgreSQL принимает записи вашего приложения (клиент оформляет заказ, POS регистрирует продажу, винодельческий сенсор отправляет показание). ClickHouse принимает агрегируемые события (клик на сайте, показание сенсора, log-событие). Аудит-таблица в PostgreSQL для строгого учёта, MergeTree в ClickHouse для дашбордных запросов. Репликация через Debezium, pg_logical или Apache Kafka — на ваш выбор.

01

PostgreSQL 16 управляемый в Республике Молдова

Текущая версия с расширенной поддержкой, преднастроенными расширениями и активным PITR-бэкапом с первой минуты.

Провижиним PostgreSQL 16 со streaming-репликацией на standby-узел в другой стойке ЦОД, плюс опциональная логическая репликация на географически разнесённую read-реплику (Франкфурт ↔ Бухарест). Самые полезные расширения предзагружены: PostGIS для геоданных (полезно при разметке точек доставки в Кишинёве, Бельцах или Комрате), pg_trgm для нечёткого поиска по названиям с румынской диакритикой, timescaledb для небольших time-series, pgvector для AI-эмбеддингов. WAL archiving работает на S3-совместимом хранилище для point-in-time recovery на любую секунду за последние 14 дней (или 30 дней на тарифах Кодру и Карпаты). Соединения ограничены PgBouncer, чтобы не исчерпать слоты.

  • PostgreSQL 16 со streaming-репликацией primary-standby
  • PostGIS, pg_trgm, timescaledb, pgvector предзагружены
  • PgBouncer с transaction pooling перед кластером
  • PITR-бэкап с WAL archiving в S3-бакет
  • Мониторинг с pg_stat_statements и pg_stat_io наружу
PostgreSQL 16 · PgBouncer · PITR 14-30 дней · PostGIS + pgvector · WAL в S3
02

ClickHouse 24 с MergeTree и ZooKeeper-репликацией

Кластер ClickHouse с реплицированным MergeTree, ZooKeeper для координации и TLS 1.3 на всех соединениях.

Провижиним ClickHouse 24 с реплицированным MergeTree между минимум двумя узлами в начальном тарифе и с горизонтальным шардингом на старших. ZooKeeper работает в кворуме из трёх узлов для координации. Кодек по умолчанию — ZSTD level 3, экономия места без заметной просадки записи: типичный лог-набор сжимается со 100 ГБ до 12-15 ГБ. Инкрементальные материализации (`MATERIALIZED VIEW`) и новые `Projection` позволяют предрасчёт агрегаций для ежедневных отчётов, выдаваемых за миллисекунды. Kafka-интеграция предконфигурирована: даёте топик и схему, ClickHouse автоматически потребляет и пишет в MergeTree. Для CDC из PostgreSQL рекомендуем Debezium → Kafka → ClickHouse.

  • ClickHouse 24 с реплицированным MergeTree и ZooKeeper
  • Кодек ZSTD-3 по умолчанию, компрессия 6-10x
  • Горизонтальный шардинг в тарифах Кодру и Карпаты
  • Kafka-таблицы и MaterializedPostgreSQL предконфигурированы
  • TLS 1.3 на нативном, HTTP и inter-shard протоколах
ClickHouse 24 · MergeTree · ZooKeeper-кворум · ZSTD-3 · Kafka native
03

Эксплуатация, безопасность и соответствие Закону 133/2011

Бэкапы с еженедельной проверкой, at-rest шифрование на LUKS, централизованный audit log, DPA подписывается при активации.

Бэкапы запускаются автоматически: PostgreSQL делает ежедневный base backup плюс непрерывный WAL в S3-бакет с object-lock; ClickHouse — снапшот MergeTree-парт ночью. Раз в неделю проверочный джоб восстанавливает бэкапы в изолированную среду и запускает `pg_dump --schema-only` + smoke-запрос, результат уходит в недельный отчёт на email. NVMe-диски лежат на LUKS, ключи в HashiCorp Vault, а соединения приложения к PostgreSQL и ClickHouse идут по TLS 1.3 с автоматически ротируемыми сертификатами Let's Encrypt. Для соответствия Закону 133/2011 о защите персональных данных подписываем DPA при активации и по запросу выпускаем отчёт обработки для ANSCC.

  • PITR-бэкап PostgreSQL + ежедневный снапшот ClickHouse
  • Еженедельная авто-проверка с восстановлением в sandbox
  • At-rest шифрование LUKS + ключи в HashiCorp Vault
  • TLS 1.3 на всех соединениях, авто-ротация сертификатов
  • DPA при активации, Закон 133/2011 + GDPR
PITR · Еженедельная проверка · LUKS + Vault · TLS 1.3 · Закон 133/2011 + GDPR
Типовые архитектуры

Четыре архитектурных паттерна, ежедневно используемых в Молдове

Единственно «правильного» способа объединить PostgreSQL и ClickHouse нет. Для каждого бизнес-профиля есть паттерн, доказавший эффективность. Эти четыре мы ставим клиентам в Молдове чаще всего — начинаете с одного, по ходу подстраиваете.

Паттерн 01

Dual-write из приложения

Приложение пишет в PostgreSQL как в источник истины и параллельно отправляет события в Kafka-топик, питающий ClickHouse. Просто понять, полный контроль над схемой. Минус: нужно аккуратно обрабатывать частичные сбои (PG записан, Kafka нет).

Типичная задержка: <100 мс · Риск: частичная запись
Паттерн 02

CDC через Debezium

Debezium читает WAL PostgreSQL и эмитит CDC-события в Kafka. ClickHouse потребляет топик. Никаких правок в приложении, изменения гарантированно доедут (с упорядочением). Минус: добавление инфраструктуры (Debezium + Kafka).

Типичная задержка: 1-3 с · Риск: низкий, порядок гарантирован
Паттерн 03

MaterializedPostgreSQL нативно в ClickHouse

В ClickHouse 24 есть движок MaterializedPostgreSQL, подключающийся прямо к PG, читающий WAL и синхронизирующий таблицы без middleware. Проще всего для справочных данных (каталог, клиенты). Минус: для очень больших таблиц может тратить ресурсы PG.

Типичная задержка: 2-5 с · Риск: лёгкая просадка IOPS на PG
Паттерн 04

Kafka-хаб с несколькими потребителями

Приложения пишут события в Kafka. PostgreSQL потребляет транзакционные, ClickHouse — аналитические. Подходит компаниям с несколькими приложениями (мультимагазин ритейл, мультипродуктовый финтех). Минус: дороже upfront-дизайн.

Типичная задержка: <1 с · Риск: операционная сложность
Тарифы кластера

Четыре размера управляемого кластера

Все тарифы включают PostgreSQL primary + standby со streaming-репликацией и ClickHouse, реплицированный через ZooKeeper. Разница — в ёмкости, шардинге ClickHouse и сроке хранения бэкапов. Hot resize поддерживается на тарифах Кодру и Карпаты.

01 · Разработка, staging, малые нагрузки

Кластер Прут

859 L/ месяц
НДС 20% включён
PostgreSQL
2 vCPU · 4 ГБ · 60 ГБ NVMe
ClickHouse
2 vCPU · 4 ГБ · 80 ГБ NVMe
PostgreSQL primary + standbyClickHouse 1 shard, 2 репликиPITR-бэкап 14 днейДвуязычная поддержка 24/7
02 · Команды в лёгком продакшне

Кластер Нистру

1 759 L/ месяц
НДС 20% включён
PostgreSQL
4 vCPU · 8 ГБ · 160 ГБ NVMe
ClickHouse
4 vCPU · 8 ГБ · 240 ГБ NVMe
Hot resize RAM на PGClickHouse 1 shard, 3 репликиPITR-бэкап 30 днейMaterialized Views auto-create
03 · SaaS, e-commerce, реальная аналитика

Кластер Кодру

3 499 L/ месяц
НДС 20% включён
PostgreSQL
8 vCPU · 16 ГБ · 320 ГБ NVMe
ClickHouse
8 vCPU · 16 ГБ · 480 ГБ NVMe
Горизонтальный шардинг CH (2 shard)Логическая реплика PG в др. ЦОДPITR 30 дней, ежедневный снапшот CHDebezium + Kafka предконфиг
04 · Телеком, финтех, мультимагазин ритейл

Кластер Карпаты

6 999 L/ месяц
НДС 20% включён
PostgreSQL
16 vCPU · 32 ГБ · 640 ГБ NVMe RAID 1
ClickHouse
16 vCPU · 32 ГБ · 960 ГБ NVMe RAID 1
PG с connection pooling (PgBouncer)CH 4 shard и ZooKeeper-кворумPITR 60 дней + еженедельная проверкаВыделенный DBA on-call на инциденты
Сценарии использования

Четыре молдавских сценария, где стек PG + CH показывает ценность

Под каждым примером — конкретный технический стек, который мы можем провижинить как шаблон. Берём один, подстраиваем параметры и кластер в продакшне за пару дней.

Кейс 01

Цифровая винодельня с IoT-сенсорами на виноградниках

Винодельня из зоны Кодру ставит датчики температуры, влажности и pH в бочках. Производственное приложение пишет заказы розлива в PostgreSQL (с PostGIS для локации каждой бочки). Сенсоры шлют показания в Kafka, ClickHouse агрегирует поминутно, почасово и посуточно для дашборда виноделов. Типовые запросы — менее секунды на 18 месяцах данных.

Типичный стек: PostgreSQL + PostGIS · Kafka · ClickHouse MergeTree · Grafana
Кейс 02

Мультимагазин ритейл с пиком на Чёрную пятницу

Ритейл-сеть с 40 магазинами в Республике Молдова. POS-кассы пишут продажи в PostgreSQL через REST API с ACID-гарантией для бухгалтерии. События продаж реплицируются Debezium в ClickHouse, где менеджерский дашборд показывает цифры по магазину, категории и часу в реальном времени. На Чёрную пятницу удваиваем CH-шарды.

Типичный стек: PostgreSQL OLTP · Debezium CDC · ClickHouse MergeTree · Metabase
Кейс 03

Молдавский финтех с требованиями НБМ и CNPF

Финтех-стартап, обрабатывающий повторяющиеся платежи. PostgreSQL держит реестр транзакций с serializable изоляцией и неизменяемым audit-логом (расширение pgAudit). ClickHouse принимает структурированные логи (request, response, latency, errors) через Kafka и даёт быстрые форензик-запросы. Данные зашифрованы at-rest на LUKS, ключи в Vault.

Типичный стек: PostgreSQL + pgAudit · LUKS + Vault · ClickHouse · OpenTelemetry
Кейс 04

Телеком-оператор с миллиардами CDR в месяц

Оператор пишет CDR-ы (Call Detail Records) в ClickHouse-кластер с шардингом по IMSI. Биллинговые данные (клиенты, контракты, тарифы) хранятся в PostgreSQL. В конце месяца SQL-джоб агрегирует CDR по клиенту и записывает итог к выставлению в PostgreSQL для выпуска электронного счёта SFS.

Типичный стек: ClickHouse шард по IMSI · PostgreSQL контракты · Airflow ETL
Эксплуатация 24/7

Что делаем мы, чтобы вы не вставали в 3 ночи

Управляемый кластер — это не просто «поставили PG и CH на VM». Вот что конкретно входит в ежемесячную цену.

Проактивный мониторинг

Метрики pg_stat_statements, pg_stat_io, system.metrics ClickHouse, лаг репликации, отставание ZooKeeper — всё в Grafana с алертами в PagerDuty/Telegram. Если лаг репликации перевалит 30 с, мы получим алерт раньше, чем вы заметите.

Бэкап и проверка

Ежедневный бэкап PostgreSQL (base + WAL) в S3 с object-lock, ночной снапшот ClickHouse. Раз в неделю восстанавливаем в sandbox и гоняем smoke-тест, отчёт на email вашему техническому контакту.

Масштабирование и оптимизация

Hot resize CPU/RAM/диска или с коротким ребутом (~90 с), тюнинг параметров PostgreSQL (shared_buffers, work_mem, autovacuum) и ClickHouse (merge_tree settings, background_pool_size), ежемесячная ревизия на тарифах Кодру и Карпаты.

Безопасность и GDPR

LUKS на NVMe, ключи в Vault, TLS 1.3 на всех соединениях, role-based access с авто-ротацией учёток приложения, неизменяемый audit-лог. DPA под подпись для соответствия Закону 133/2011 и европейскому GDPR.

Часто задаваемые

О чём спрашивают молдавские DevOps-команды перед миграцией

Можно подключаться прямо из приложения или нужен прокси?

Можно подключаться напрямую через стандартный PostgreSQL-string или через ClickHouse-коннектор (HTTP или нативный протокол). За кулисами мы ставим PgBouncer перед PG для transaction pooling, так что вы можете держать сотни одновременных соединений, не насыщая слоты. Поддерживаются ch-cli, dbeaver, datagrip — любой стандартный SQL-клиент.

Как делается миграция с моей текущей базы?

Для PostgreSQL: старший инженер делает pg_dump схемы, восстанавливает в новый кластер, синхронизирует данные через pg_logical replication до лага менее секунды, затем переключаем приложение менее чем за 30 секунд. Для ClickHouse: копирование через clickhouse-copier или экспорт CSV/Parquet из старой базы, загрузка в новый кластер через INSERT INTO ... SELECT из S3. Весь процесс бесплатно.

Какой реальный SLA?

99,99 % uptime контрактно для обеих баз. Автоматическая компенсация в MDL в следующем цикле, если SLA не выдержали. На практике последние 12 месяцев у нас 99,997 % для среднего кластера — менее 16 минут совокупного простоя в год.

Можно делать read-only реплики для отчётов?

Да. PostgreSQL даёт hot standby со streaming-репликацией — читаете с реплики, не нагружая primary. ClickHouse масштабирует чтение добавлением реплик к каждому шарду. На тарифах Кодру и Карпаты реплики могут быть в другом ЦОД (Франкфурт ↔ Бухарест) — устойчивость к региональной аварии.

Поддерживаете pgvector для AI-эмбеддингов?

Да, pgvector предустановлен во всех тарифах PostgreSQL 16. Поддерживаем размерности до 2000, индексы HNSW и ivfflat. Для интенсивного семантического поиска (например, рекомендательные движки для молдавского e-commerce) рекомендуем Кодру или больше.

Какова политика хранения бэкапов?

Прут и Нистру: 14 дней PITR для PG, ежедневный снапшот CH на 14 дней. Кодру: 30 дней для обоих. Карпаты: 60 дней для обоих плюс еженедельная проверка с восстановлением в sandbox. Расширенный retention (90+ дней) — по запросу, на кастомных тарифах.

Стартуем вместе

Активируем ваш кластер PG + CH менее чем за 24 часа.

Назначьте 30-минутный разговор с DevOps-командой. Вместе определим ваш профиль данных (объём, частоту записи, паттерны чтения), порекомендуем тариф и провижиним тестовый инстанс бесплатно на 7 дней с синтетическими данными. Если не подойдёт — ничего не платите.