title

text

Robert Bernier
Robert Bernier Percona Старший консультант по PostgreSQL
16:00 03 марта
45 мин

Продвинутые техники pg_upgrade

На сегодняшний день утилита командной строки pg_upgrade является наиболее популярным инструментом для обновления между мажорными версиями Postgres. Однако помимо достоинств, у неё есть и известные проблемы. Одна из наиболее критичных: что делать, если произошёл сбой? Цель данного доклада - раскрыть те маленькие секреты, благодаря которым любой из слушателей сможет существенно улучшить процесс выполнения обновлений.

Мы начнём с обсуждения базового режима фунционирования pg_upgrade. Потом мы изучим то, что позволяет обновить многотерабайтный кластер за считанные минуты. В конце мы обсудим те самые ситуации сбоя, которых все боятся, а также разберёмся, что делать в случае их возникновения, чтобы обрести уверенность и определённость.

Список подтем доклада приведён ниже:

  • Как работает pg_upgrade? Общая картина
  • О pg_upgrade (вызов из командной строки)

    • аргументы и опции

  • Пошаговое выполнение обновления
  • О репликации на основе РОЛИ

    • с атрибутом REPLICATION
    • с атрибутом LOGIN

  • Опции для обновления: копирование или жёсткие ссылки?
  • Что делать после обновления?

    • о производительности
    • об анализе
    • о команде REPACK
    • о переиндексации

  • Когда что-то идёт не так, и точка невозврата уже пройдена (пройдена ли?)
  • Обновляем РЕПЛИКУ
    • Метод по умолчанию: pg_basebackup
    • Продвинутый метод:
      • - используем rsync
      • предупреждение: закольцовка vacuum

Видео

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

  • Олег Бартунов
    Олег Бартунов Postgres Professional генеральный директор
    Никита Глухов
    Никита Глухов Postgres Professional Разработчик
    45 мин

    JSONB изнутри

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

  • Антон Дорошкевич
    Антон Дорошкевич ИнфоСофт Руководитель Отдела-ИТ
    45 мин

    Сжатие на уровне СУБД в реалиях 1С

    В PostgresPro Enterprise есть замечательный механизм сжатия. 2020 год мною был посвящён исследованию этого механизма в реальной работе 1С. Накоплены некоторые статистические данные и конечно тонкости использования и поведения 1С по сравнению с другой популярной СУБД, которыми и хочу поделиться.

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

    Multicorn Foreign Data Wrapper против plpython

    Технология Multicorn позволяет разрабатывать FDW на языке Python, что гораздо проще и быстрее создания FDW на языке C. Однако есть и обратная сторона, Multicorn FDW хорошо работают с примитивными условиями WHERE, но на чуть более сложных случаях возникают трудности, про которые я расскажу. Случаи будут рассмотрены на примере моего Multicorn FDW для получения данных OpenStreetMap. Так же я покажу примеры использования одного и того же кода в Multicorn FDW и функции на plpython, в том числе сравнение производительности. В заключение поделюсь своими выводами, когда лучше использовать plpython, а когда Multicorn FDW.

  • Daniele Varrazzo
    Daniele Varrazzo Codice Lieve Директор
    90 мин

    Python для PostgreSQL: как его использовать и преуспеть в этом?

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

    Мы рассмотрим psycopg2, наиболее часто используемую библиотеку-адаптер PostgreSQL для Python, а также анонсируем предстоящий релиз psycopg3: что останется прежним, что изменится, как лучше реализовать программу на Python, чтобы использовать PostgreSQL по максимуму.