title

text

Андрей Бородин
Андрей Бородин Яндекс Разработчик
Евгений Дюков
Евгений Дюков Yandex Старший разработчик
13:30 01 марта
45 мин

Эксплуатация высокодоступных РСУБД с открытым исходным кодом в облачном окружении

Системы высокой доступности стали крайне популярны в последние несколько лет: они играют решающую роль в построении надёжных систем из доступного аппаратного обеспечения. В докладе мы обратим внимание на некоторые тонкие моменты проектирования и эксплуатации таких систем. Кроме того, будут затронуты проблемы захвата изменений с кластера высокой доступности.

Видео

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

  • Николай Самохвалов
    Николай Самохвалов Nombox LLC Основатель
    180 мин

    Бесшовная оптимизация запросов PostgreSQL, версия 2.0

    Существует два способа анализировать SQL-запросы:

    1. На макроуровне: в этом случае мы анализируем рабочую нагрузку как единое целое (есть три основных подхода: использование метрик из pg_stat_statements или аналогичного модуля, анализ логов с помощью pgBadger или другого похожего решения и запрос выборки в представлении pg_stat_activity).

    2. На микроуровне: в этом случае мы погружаемся в детали исполнения одного конкретного запроса (тут главную роль играет команда EXPLAIN).

    Между этими двумя подходами есть немало "белых пятен", которые обнаруживаются с ростом нагрузки. Главные проблемы:

    • Нужно переключаться между макро- и микроуровнем без больших накладных расходов.
    • Требуется надёжная проверка гипотез относительно возможных оптимизаций.
    • Есть необходимость минимизации рисков при развёртывании новой функциональности.

    Чтобы справляться с этими задачами в растущем проекте, требуется продвинутый опыт в качестве администратора баз данных, и – иногда – интуиция. Также могут помочь новые инструменты, которые (к счастью для нас!) не так давно начали появляться.

    В рамках данного мастер-класса мы разберёмся, как можно настроить процесс беспроблемной и бесшовной оптимизации SQL-запросов в вашей организации: а) какие инструменты следует выбрать в вашем конкретном случае? б) как эффективно заполнить вышеупомянутые пробелы в сфере анализа запросов?

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

    Шардман - естественный подход к шардингу в PostgreSQL

    Объем данных, с которым работают современные корпоративные и интернет системы, постоянно растет. При этом все сложнее становится иметь и синхронизировать несколько копий данных в разных системах. Возникает необходимость работать с большими объемами данных непосредственно в транзакционной СУБД, Часто такое требование накладывает и логика приложений, которым необходимы результаты в реальном времени. В докладе рассмотрим какой может быть универсальная распределенная транзакционная СУБД. Разберем такие аспекты как типы нагрузки и их приоритизация, динамическое выделение ресурсов, уровень консистентности. Расскажем на каких инструментах в PostgreSQL можно построить такую систему, что у нас уже получилось и какие задачи еще предстоит решить.

  • Павел Борисов
    Павел Борисов Postgres Professional программист
    45 мин

    Ускорение быстрого текстового поиска с помощью индекса RUM

    Быстрый текстовый поиск в PostgreSQL существенно ускоряется, если использовать обратные составные индексы по лексемам внутри типа tsvector. Индекс RUM - это свободное расширение, основанное на индексе GIN. Оно индексирует не только лексемы, но и их положение в текстовом поле, а также включает дополнительную информацию - вес лексемы, это позволяет полнее поддерживать возможности tsvector.

    До недавних пор запросы с весами лексем в индексе RUM требовали перепроверки по таблице. Моя модификация (2020) в разы ускоряет такие запросы, делая их index-only.

    В докладе будут представлены различные сценарии использования быстрого текстового поиска и применение индекса RUM для его существенного ускорения, а также бенчмарки по сравнению с встроенным в PostgreSQL индексом GIN.

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

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

    Речь пойдет о простом инструменте стратегического анализа исторической нагрузки. Расширение предназначено для поиска проблем производительности в базах данных Postgres. Расскажу о принципах работы расширения, его применимости, возможностях и развитии. У pg_profile появилась расширенная ветка pgpro_pwr, предназначенная для работы в дистрибутивах PostgresPro с расширенным набором статистик производительности. Покажу на простых примерах преимущества, доступные в базах PostgresPro Enterprise Edition и PostgresPro Standard Edition.