Использование PITR в распределенных cистемах на базе PostgreSQL
В Postgres есть возможность восстановления данных на момент времени (PITR), которая позволяет нам "отправляться" в прошлое. В этом докладе мы обсудим, какие существуют основные сценарии использования этой функциональности, как подготовить базу данных к восстановлению на момент времени, настроив хорошую систему бэкапов и транcляции WAL-файлов, а также рассмотрим конкретные примеры. Мы подробнее остановимся на том, как применять PITR на распределенных системах и кластерах с шардингом, затронув типичные проблемы подобных конфигураций, такие как разница во времени, и предложим возможные способы их решения - например, двухфазный коммит и pg_create_restore_point.
Слайды
Видео
Другие доклады
-
Брюс Момжиан EnterpriseDB Senior Database Architect
Защита PostgreSQL от внешних атак
Доклад раскроет все известные способы, которыми не имеющие авторизованного доступа к базе данных злоумышленники могут выкрасть пароли Postgres, просмотреть совершенные тразакции и даже вмешаться в работу сессии, возвращая фальсифицированные данные.
Postgres обладает встроенными средствами защиты для предотвращения этих угроз, однако администраторы баз данных должны понимать уязвимости для лучшей защиты от них.
-
Андрей Зубков ООО "Пармалогика" Администратор баз данных
Инструмент анализа исторической нагрузки или "AWR для Postgres"
Администратор баз данных регулярно сталкивается с необходимостью поиска проблемных запросов в своих базах данных. Для оперативного поиска хорошо подходит PGCenter, но что делать если проблемы производительности наблюдались в прошлом? В этом докладе я хочу поделиться своим опытом разработки и применения инструментария, позволяющего производить ретроспективный анализ нагрузки запросов в базах данных PostgreSQL - pg_profile
-
Анатолий Солдатов Компания - ЗАО ЛАНИТ Старший разработчик баз данных
Как деплоить в 5 раз быстрее или рассказ о нашей реализации параллельного выполнения миграций в Liquibase
Liquibase - очень удобный инструмент последовательных миграций баз данных, используемый как на наших проектах, так и в большом числе других проектов и фреймворков. Он позволяет держать код базы вместе с кодом приложения в VSC, отслеживать попытки повторных миграций и много-много чего еще. Но рано или поздно проект вырастает, данные занимают терабайты, а liquibase все еще накатывает миграции последовательно.
Мы не смогли позволить себе деплоиться по 100 часов и придумали тулзу (фреймворк) для liquibase, которая расширяет его возможности и позволяет выполнять паралллельно целый ряд скриптов или разбивать одну большую миграцию на маленькие партиции и параллельно мигрировать их.
-
Михаил Балаян Acronis Chief Database Architect
MVCC в картинках и когда длинные транзакции - это проблема
Многие из нас знают о том, что именно MVCC обеспечивает многопользовательский доступ к данным во многих реляционных базах данных, которые гарантируют согласованность и изолированность транзакций. Но именно глубокое понимание реализации этого механизма в PostgreSQL позволяет нам лучше понимать процессы, происходящие в базе, проектировать логику работы приложений и структуры таблицы, чтобы быть наиболее эффективными в мире высоких нагрузок. На примере одного из процессов в нашем продукте мы разберемся в том, как реализована MVCC в PostgreSQL и раскопаем одну из особенностей, когда казалось бы, несвязанные активности могут влиять друг на друга.