Балансировка нагрузки шардированного PostgreSQL не своими руками

Базы данных и системы хранения

PostgreSQL
MongoDB
Базы данных / другое
Хранилища
Обработка данных
YDB

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Мы стараемся поддерживать Open Source, а в этом году SPQR (инструмент для шардирования PostgreSQL) научился менять количество шардов на лету. Из доклада вы узнаете о существующих подходах к решардингу, а также о том, что у команды SPQR получилось в результате.

Целевая аудитория

Разработчики, администраторы баз данных.

Тезисы

Stateless Postgres Query Router — система шардирования PostgreSQL-кластера с открытым исходным кодом. Роутер, главный ее компонент, по запросу понимает, на каком конкретном PostgreSQL-кластере надо выполнить транзакцию или запрос.

В своем докладе я расскажу о главной проблеме, которую должна решать любая шардированная OLTP-база данных: как быстро и эффективно балансировать нагрузку и данные в инсталляции. В этом докладе я хочу обсудить возможные решения этой проблемы, рассказать, как устроено шардирование в других OLTP-базах данных, а также какие проблемы есть у такой системы: протоколы блокировки, методы перевоза данных, восстановление после сбоев, оценку нагрузки на диапазоны ключей шардирования и т.д. И о том, как мы решаем эту проблему в SPQR.

Эта информация может быть полезна тем, кто стоит на пороге шардирования PostgreSQL-кластера, пишет свое решение или рассматривает готовые. Некоторые инциденты будут описаны как свидетельства возможных направлений будущей работы.

Разрабатывает PostgreSQL в Yandex Cloud в команде Open Source DBMS development.

Yandex Cloud

Строят публичную облачную платформу Yandex Cloud, чтобы дать компаниям доступ к технологиям и сервисам, которые проверены нагрузками Яндекса. Продукты Yandex Cloud — это масштабируемая инфраструктура, сервисы хранения данных, инструменты машинного обучения и средства разработки.

Видео