PgDog
PgDog — это высокопроизводительный прокси-сервер для PostgreSQL, объединяющий в себе пул соединений, балансировщик нагрузки и распределённую базу данных. Один исполняемый файл позволяет масштабировать Postgres горизонтально без изменений в коде приложения, обеспечивая пропускную способность свыше 2 миллионов запросов в секунду и поддержку баз данных объёмом более 20 ТБ.
Основные преимущества
- Пул соединений в реальном режиме транзакций: распределение небольшого числа Postgres-соединений между 100 000+ клиентами с сохранением сессионного состояния, подготовленных выражений и асинхронной многопоточной обработкой до 50 000 транзакций в секунду на поток.
- Балансировка нагрузки как ALB для базы данных: автоматическое распределение чтений между репликами, обнаружение репликационного лага, аппаратных сбоев и failover-переключений с единой точкой входа для всех запросов.
- Распределённое шардирование без изменений приложения: извлечение ключа шардирования непосредственно из запросов, параллельное выполнение OLAP-операций GROUP BY, COUNT, AVG, ORDER BY и поддержка гибкого распределения данных по любым полям стандартных типов Postgres.
- Сохранение ACID при масштабировании: кросс-шардовые транзакции с двухфазным коммитом, реплицированные таблицы для локальных JOIN, монотонные целочисленные первичные ключи и автоматическая синхронизация DDL-схем между шардами.
Сценарии применения
- Высоконагруженные OLTP-системы: обработка сотен тысяч одновременных клиентских соединений при ограниченном пуле серверных процессов Postgres, устранение узких мест при всплесках трафика.
- Аналитические OLAP-запросы на шардированных данных: выполнение агрегаций и сортировок в распределённом режиме без необходимости в отдельных аналитических хранилищах, scatter/gather-архитектура на базе Postgres.
- Мультиарендные SaaS-платформы: горизонтальное масштабирование по tenant_id с прозрачным перераспределением данных между шардами через UPDATE-запросы и автоматической генерацией первичных ключей.
- Критически важные инфраструктуры с требованием 100% аптайма: автоматическое обнаружение отказов и переключение нагрузки на резервные узлы без ручного вмешательства и изменений конфигурации.
Целевая аудитория
PgDog предназначен для инженеров платформенных команд, архитекторов баз данных и технических директоров компаний, столкнувшихся с ограничениями вертикального масштабирования PostgreSQL и ищущих решение для горизонтального роста без рефакторинга существующих приложений. Продукт активно используется в финтехе, геопространственных сервисах и высоконагруженных облачных платформах.