1.5Kпросмотров
54.3%от подписчиков
19 марта 2026 г.
Score: 1.7K
PostgreSQL на пути к Exadata: как разделить Compute и Storage и не потерять совместимость На PG BootCamp 2026 Moscow сразу два доклада «Тантор Лабс» сложились в диагноз и рецепт: Вадим Яценко назвал хронические болезни PostgreSQL, а Алексей Копытов показал, как их лечить архитектурой Compute/Storage Separation. Десятилетиями не решаются фундаментальные проблемы: • Переполнение счетчика транзакций, потеря данных при failover, размножение повреждений через репликацию — всё ещё в работе.
• MVCC, process-per-connection, отсутствие hints и сжатия блоков — либо заброшены, либо живут в расширениях.
• Масштабирование требует полных копий данных на каждой реплике, а шардинг ломает транзакции и JOIN-ы.
Их решение:
Форк PolarDB (Alibaba) и его развитие, Tantor Polar, разделяют вычисления и хранение. Все узлы используют общее блочное устройство (RDMA, NVMe-oF). Реплики не хранят данные, а читают с общего хранилища. Репликация только метаданных (<PageID, LSN>) вместо WAL.
Ключевые доработки:
• PolarFS — распределённая файловая система с переписанным IPC, настоящим fsync() и группировкой POLL-запросов. Запись до 7х быстрее, чтение до 10.9х.
• CSN (Commit Sequence Number) — получение снимка за O(1) вместо сканирования ProcArray. Субтранзакции (SAVEPOINT) больше не убивают производительность.
• WAL Pipeline — конвейерная обработка WAL выделенными потоками, убрана конкуренция за блокировки.
• Shared Server — встроенный пул соединений, хранящий состояние сессии в shared memory. Prepared statements, LISTEN/NOTIFY, advisory locks работают без оверхейда.
• HTAP через ePQ — адаптированный планировщик Greenplum: любой узел становится координатором, аналитика на тех же данных без ETL.
• DataMax для DR — узлы-ретрансляторы с синхронным приёмом WAL (RPO=0) и асинхронной отдачей в другой ЦОД. Итог:
PostgreSQL обретает экономически эффективное масштабирование, тысячи соединений без деградации, HTAP на одной копии данных и отказоустойчивость уровня enterprise — без переписывания приложений. 🌐 ССЫЛКА НА ОНЛАЙН-ТРАНСЛЯЦИЮ