Как стать автором
Обновить

Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL. Часть. 1

Время на прочтение12 мин
Количество просмотров11K
Всего голосов 40: ↑40 и ↓0+40
Комментарии5

Комментарии 5

Павел, Михаил, спасибо! Ждём с нетерпением следующие части! ^_^

Спасибо. Отличная статья с понятными описаниями плюсов и минусов решений. С нетерпением жду следующей части.

Почему мультимастер в Postgres актуален ? - даже Сбербанк начал использовать Oracle Real Application Cluster только в 2014-м году. И то, не совсем честный - узлы кластера имели свою специализацию: https://coolfinans.ru/news/perekhod_na_orac_kart_sberbanka/2014-12-10-129

Или PostgreSQL технически слабее Oracle из-за чего алгоритмические недостатки требуется компенсировать горизонтальным масштабированием.

Исходя из моего опыта - особо не актуален. Большинство задач можно решить просто создав еще виртуалок с новыми "шардами", а сам шардинг реализовать на уровне приклада. Примерно так работает СбербанкОнлайн.

Имхо все подобные разработки - результат ретроградного мышления ряда заказчиков, которые требуют, чтоб было непременно "как в оракле". Со временем пройдет, я думаю...

Шардирование, как и секционирование нарушают идею реляционной базы данных. В результате теряется ссылочная целостность; нельзя просто sql-запросом получить все данные; появляется необходимость в распределенных транзакциях. Это сильно усложняет разработку, по сравнению с тем, что было в Oracle.

Единственное, можно делать readonly-реплики для горизонтального масштабирования. При этом архитектура системы практически не усложняется, но есть некоторые нюансы, такие как ограничение времени работы запросов и лаг в обновлении данных.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий