title

text

Павел Конотопов
Павел Конотопов inCountry DBA team lead
: декабря
45 мин

Пять оттенков шардинга

Колоссальное значение сейчас приобретает шардинг. Размеры современных БД перешагивают 100 терабайтные пределы, вертикальное масштабирование, добавление реплик, содержащих полную физическую копию БД, становится затруднительным, особенно при дефиците вычислительных ресурсов. Шардирование базы данных – это способ горизонтально масштабироваться, разделив данные между независимыми друг от друга вычислительными узлами.

В мире PostgreSQL существуют как давно известные инструменты масштабирования: CitusDB, Greenplum, так и решения нового поколения – Cockroach DB, Yugabyte DB, SPQR, Shardman.

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

Слайды

Видео

Видео доступно участникам мероприятия, выполнившим вход в личный кабинет

Другие доклады

  • Евгений Бредня
    Евгений Бредня Postgres Professional Руководитель техподдержки
    45 мин

    Восстановление повреждённых данных

    Как подступаться к спасению повреждённых данных...

  • Андрей Зубков
    Андрей Зубков Postgres Professional Руководитель группы систем мониторинга
    45 мин

    Утилиты стратегического мониторинга pg_profile/pgpro_pwr. Архитектура, настройка, возможности

    Основная задача стратегического мониторинга - предоставление количественной информации о наиболее ресурсоёмких активностях СУБД с целью проведения оптимизации. Стратегический мониторинг сам по себе никакие проблемы не решает, но может подсказать на что стоит обратить внимание. Одним из таких средств является расширение pg_profile/pgpro_pwr. Об их архитектуре, возможностях, особенностях работы и способах применения и пойдёт речь.

  • Игорь Алов
    Игорь Алов Yandex.Bank SRE
    22 мин

    Pgpool-II работа в режиме "Master-Master" или Как должна выглядеть балансировка нагрузки PostgreSQL глазами сетевого инженера.

    Одна из базовых задач для высоконагруженных проектов – это «правильно» настроенное распределение нагрузки внутри кластера базы данных (балансировка), которое бы отвечало определенным параметрам SLA. Большинство решений, с которыми я познакомился, в том числе и Pgpool-II, не в полной мере могли соответствовать требованиям бизнеса. Руками и глазами сетевого инженера мы попытаемся улучшить решение от Pgpool-II и настроим его работу в режиме «Master-Master», а так же рассмотрим случаи, в которых без аналогичных решений не обойтись.

  • Алексей Фадеев
    Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
    22 мин

    ORM LinqToDb: используем возможности Postgres по максимуму

    ORM-библиотеки широко используются при разработке бэкенда – примем это как данность. ORM-библиотеки совершенствуются, разработчики учатся на своих и чужих ошибках, и многие научились писать код для ORM, генерирующий вполне оптимальные запросы для типовых операций. Но есть ещё одна проблема ORM – ограниченность инструментов. Особенно это актуально для Postgres, имеющего массу операторов и конструкций (как в ядре, так и в расширениях), выходящих за рамки стандарта SQL.

    ORM-библиотека LinqToDb имеет важную особенность: она позволяет очень просто (буквально в одну строку) писать расширения, реализующие любой SQL-оператор или конструкцию. Полнотекстовый поиск, KNN, CTE (в том числе рекурсивные), работа с массивами и jsonb, array_agg и jsonb_object_agg, табличные функции и LATERAL JOIN – всё это без труда можно использовать в ORM, что я и продемонстрирую в данном докладе!