title

text

Анатолий Солдатов
Анатолий Солдатов Компания - ЗАО ЛАНИТ Старший разработчик баз данных
: декабря
22 мин

Как деплоить в 5 раз быстрее или рассказ о нашей реализации параллельного выполнения миграций в Liquibase

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

Мы не смогли позволить себе деплоиться по 100 часов и придумали тулзу (фреймворк) для liquibase, которая расширяет его возможности и позволяет выполнять паралллельно целый ряд скриптов или разбивать одну большую миграцию на маленькие партиции и параллельно мигрировать их.

Слайды

Видео

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

  • Иван Панченко
    Иван Панченко Postgres Professional рзаместитель генерального директора
    90 мин

    Полнотекстовый поиск: от A до Ω

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

  • Вадим Яценко
    Вадим Яценко Tantor Lab Генеральный директор
    Сергей Ким
    Сергей Ким Ingram Micro Cloud Software Architect
    45 мин

    PostgreSQL High Availability кластер для Enterprise

    В последнее время PostgreSQL все чаще используется для Enterprise. Наша компания Ingram Micro Cloud была одной из первых, кто сделал это. Мы уже много лет используем PostgreSQL в качестве основной СУБД для наших продуктов. В докладе мы хотим рассказать об эволюции нашего High Availability (HA) кластера PostgreSQL: как мы в сжатые сроки внедряли решение на pgpool-II, писали failover сценарии, тестировали Postgres-XL и придумывали необычные конфигурации Stolon. Немного поговорим о проблемах балансировки нагрузки, пуллинга соединений и бекапировании.

  • Алексей Лесовский
    Алексей Лесовский Data Egret PostgreSQL DBA
    45 мин

    Давайте отключим vacuum?!

    Такой призыв часто возникает, когда в PostgreSQL возникают проблемы, и главным подозреваемым оказывается vacuum. По опыту, многие наступают на эти грабли, и мне с коллегам по Data Egret нередко приходится разгребать последствия, так как потом всё становится ещё хуже. Но если обратить внимание на сам vacuum, то, пожалуй, нет такого человека, который бы использовал Postgres, и при этом ничего не знал про вакуум. Ведь история вакуума начинается относительно давно, и в интернете можно найти массу как старых, так и новых постов про вакуум, объемные дискуссии в списках рассылки. Несмотря на то, что тема вакуума подробно описана в официальной документации к PostgreSQL, новые посты и новые дискуссии будут появляться и дальше. Возможно, поэтому с вакуумом связано очень много мифов, баек, страшилок и заблуждений. Между тем, вакуум является одним из важнейших компонентов PostgreSQL, и его работа напрямую сказывается на производительности. В одном докладе невозможно рассказать про вакуум абсолютно всё, но я бы хотел раскрыть ключевые моменты, связанные с вакуумом, такие как его внутреннее устройство, основные подходы к его настройке, наблюдение за производительностью, мониторинг, и что делать в случае, когда вакуум - главный подозреваемый во всех бедах. Ну и, конечно же, хочется развеять распространенные мифы и заблуждения, связанные с вакуумом.

  • Александр Кукушкин
    Александр Кукушкин Zalando SE Database Engineer
    Алексей Клюкин
    Алексей Клюкин Zalando SE Database Engineer
    180 мин

    Мастер-класс: Управление высокодоступными PostgreSQL кластерами с помощью Patroni

    Patroni - это Python-приложение для создания высокодоступных PostgreSQL кластеров на основе потоковой репликации. Оно используется такими компаниями как Red Hat, IBM Compose, Zalando и многими другими. С его помощью можно преобразовать систему из ведущего и ведомых узлов (primary - replica) в высокодоступный кластер с поддержкой автоматического контролируемого (switchover) и аварийного (failover) переключения. Patroni позволяет легко добавлять новые реплики в существующий кластер, поддерживает динамическое изменение конфигурации PostgreSQL одновременно на всех узлах кластера и множество других возможностей, таких как синхронная репликация, настраиваемые действия при переключении узлов, REST API, возможность запуска пользовательских команд для создания реплики вместо pg_basebackup, взаимодействие с Kubernetes и т.д.

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

    • область применения: какие задачи HA успешно решаются Patroni
    • обзор архитектуры
    • создание тестового кластера
    • утилита patronictl
    • изменение конфигурации PostgreSQL для кластера, управляемого Patroni
    • мониторинг с помощью API
    • подходы к переключению клиентов
    • дополнительные возможности: ручное переключение, перезагрузка по расписанию, режим паузы
    • настройка синхронной репликации
    • расширяемость и универсальность
    • частые ошибки и их диагностика

    Для полного участия в мастер-классе вам понадобится ноутбук с установленным git, vagrant и virtual box.

    Vagrant можно загрузить со страницы https://www.vagrantup.com или установить с помощью пакетов в вашем дистрибутиве. Virtualbox: https://www.vagrantup.com

    После установки Vagrant и Virtualbox нужно выполнить:

    $ git clone https://github.com/alexeyklyukin/patroni-training
    $ cd patroni-training
    $ vagrant up
    

    После того, как patroni box поднимется и установит необходимые пакеты к нему можно подключиться с помощью vagrant ssh.