title

text

Александр Кукушкин
Александр Кукушкин Zalando SE Database Engineer
18:00 20 июня
45 мин

Как Patroni решает проблему потери слотов логической репликации?

Более семи лет назад вышел PostgreSQL 9.4, в котором впервые появились функции логического декодирования и слоты репликации. И, спустя несколько лет, на базе этих функций в PostgreSQL 10 наконец то появилась поддержка логической репликации встроенная в ядро. Казалось бы, наступило солнечное будущее к которому мы так долго шли, если бы не пара неприятных моментов: логическая репликация не работает на репликах, плюс в PostgreSQL нет механизмов создания логических слотов на реплике. Это означает что при переключении мастера на новый узел слоты репликации теряются и на практике делает невозможным использование логической репликации и CDC для серьезных промышленных решений.

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

В докладе я расскажу как Patroni решает данную проблему используя исключительно на возможности PostgreSQL. Мы поговорим о плюсах и минусах данного решения, и попытаемся понять безопасно ли это немного погрузившись во внутренности Postgres.

Материалы к докладу

Видео

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

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

  • Анатолий Анфиногенов
    Анатолий Анфиногенов АО "ВНИИЖТ" Зам. директора научного центра - начальник отдела разработки ПО
    45 мин

    Жизнь после импортозамещения: некоторые особености настройки БД и хранимых процедур

    Многие литературные произведения заканчиваются свадьбой, а про дальнейшую жизнь героев читателю скупо сообщают, что они жили долго и счастливо. В 2019 распределенное серверное приложение, работающего 24/7 на полигоне 16 железных дорог от Калининграда до Хабаровска плюс несколько БД центрального уровня, было перенесено с Oracle 11g SE на ванильный PostgreSQL 11.9. Но наша история не закончилась на успешном импортозамещении - жизнь продолжалась и порой преподносила сюрпризы. Мы столкнулись с некоторым количеством эксплуатационных проблем, часть из которых удалось решить за счет реорганизации данных, часть - за счет изменения хранимых процедур, а еще часть - за счет изменения парамеров PostgreSQL. Решение наших проблем было бы невозможным без встроенной в приложение системы логирования и профилирования. Доклад посвящен примерам успешного диагностирования и решения проблем с производительностью приложения для БД PostgreSQL, все взаимодействие с которым осуществляется только через слой хранимых процедур.

  • Иван Чувашов
    Иван Чувашов ООО Calltouch DBA
    22 мин

    Повреждение данных PostgreSQL на жестком диске. Что делать и как исправить?

    Любая СУБД хранит свои данные на жестком диске, следовательно, может произойти ситуация, когда данные на диске повредились. Это может быть сбой контроллера, логическое или физическое повреждение данных, есть и масса других причин. Хорошо, когда в таких ситуациях повреждается файл индекса, команда пересоздания индекса позволяет восстановить консистентность в СУБД. Гораздо хуже дело обстоит, когда поврежден файл таблицы или системного раздела, восстановить поврежденные данные тогда невозможно. Приходиться прибегать к разным ухищрениям. Это может быть восстановление из бекапа, копирование данных из поврежденной таблицы или другие способы. В докладе рассмотрим несколько случаев повреждения данных на диске и опишем варианты восстановления данных из поврежденных таблиц.

  • Виктор Бушмин
    Виктор Бушмин Росгосстрах Директор направления
    45 мин

    Эволюция системы от MVP до HighLoad (опыт с ОСАГО)

    В июне 2020 года АльфаСтрахование, как и другие страховые компании, была обязана использовать АИС РСА 2.0 для обеспечения работы ОСАГО в соответствии с законодательством. Компания занимает ведущие позиции на рынке ОСАГО, поэтому системы АИС ОСАГО, которые хранят информацию по обращениям от бизнес-систем до РСА и обратно, начали испытывать неожиданную нагрузку, БД стала деградировать, потреблять огромные для ее размера ресурсы. Деградация внезапно наступала и внезапно заканчивалась, причины были неясны. Творческий коллектив инженеров и экспертиза Postgres Pro решили проблему. Виновником оказался MyBatis (ORM) в Java-сервисах. История о том, что надо внимательно изучать документацию и проектировать высоконагруженные системы.

  • Виталий Ранн
    Виталий Ранн VK Cloud Solutions Data Platform Lead Technical Product Manager
    45 мин

    Deploy, Setup, Support: как работает Postgres Pro у облачного провайдера VK Cloud Solutions

    Облачный провайдер оперирует большим количеством железных ресурсов и сетевых сущностей. Но одно дело, когда компания запускает десятки инстансов БД в изолированном контуре для внутренних задач. Совсем другое — когда облачный провайдер предоставляет услуги b2b-пользователям и создает сервис для 500+ крупных компаний.

    Виталий расскажет, как сейчас работает Managed PostgresPRO у облачного провайдера VK Cloud Solutions, покажет архитектуру решения и расскажет о сложностях, с которыми столкнулись при создании продукта.