title

text

Дмитрий Сарафанников
Дмитрий Сарафанников Яндекс Разработчик
12:15 07 февраля
45 мин

Как сохранить статистику при мажорном обновлении, и что за это бывает

Ни для кого не секрет, что статистика не переносится при мажорном обновлении. Для небольших и не сильно нагруженных баз это не проблема, можно быстро собрать новую статистику. Но у нас есть базы объемом порядка 5ТБ и нагрузкой порядка 100k rps, для которых это стало большой проблемой: взлетая без статистики, реплики даже не могли накатывать WAL. В своем докладе расскажу, на какие хитрости мы пошли, чтобы произвести обновление этих баз в условиях требований 100% доступности read only, о том, какие ошибки допустили, и о том как эти ошибки мучительно исправляли. Результатом этих ошибок стало расширение pg_dirty_hands, в котором мы будем собирать различные хаки, которые можно назвать «фол последней надежды».

слайды

Видео

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

  • Максим Соболевский
    Максим Соболевский JetBrains Менеджер по марткеингу
    45 мин

    DataGrip: IDE для PostgreSQL от JetBrains

    JetBrains 15 лет производит среды разработки для работы со многими языками программирования. Самая популярная из них – IntelliJ IDEA для java, но она поддерживает и базы данных. В какой-то момент мы решили, что эту функциональность и глубокий опыт компании в работе с языками можно привнести и в мир SQL – так появилась среда разработки DataGrip. В докладе я расскажу о том, как DataGrip помогает писать код и работать с данными быстро, как расширить самому функциональность инструмента и постараюсь выяснить, какие проблемы в инструментарии актуальны для российского PostgreSQL сообщества.

  • Камиль Исламов
    Камиль Исламов Stickeroid Ai CTO
    22 мин

    PostgreSQL и MQTT в качестве системы обработки IoT данных

    MQTT - это эффективный протокол обмена данными для IoT устройств. Построенная с помощью доработанного EMQTT плагина, архитектура IoT проекта использует PostgreSQL в качестве центра обработки и хранения данных, поступающих от сенсоров в реальном времени. В докладе будет представлен пример решения программно-аппаратной платформы IoT, реализованного на базе протокола MQTT, где PostgreSQL выполняет ключевые функции, обеспечивая оперативный учёт, сбор и хранение данных от распределённой сети IoT устройств.

  • Иван Фролков
    Иван Фролков Postgres Professional инженер-консультант
    45 мин

    Управление потоками заданий в PostgresPro Enterprise

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

  • Андрей Сальников
    Андрей Сальников Data Egret DBA
    45 мин

    Практика обновления версий PostgreSQL

    В большинстве своем, системные администраторы и ДБА бояться как огня делать мажорные обновления версий баз данных (RDBMS), особенно если эта база данных в эксплуатации и имеет достаточно высокую нагрузку. Главной причиной тому некоторый даунтайм базы данных, который всегда подразумевается при планировании таких работ.

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

    В Data Egret мы накопили огромный опыт проведения мажорных апгрейдов PostgreSQL в проектах, где нет права на ошибку. Я поделюсь своим опытом и расскажу о следующих шагах процесса: как правильно подготовиться к upgrade-у PostgreSQL? что необходимо сделать на этапе подготовки? как запланировать последовательность действий на сам upgrade? как провести процедуру upgrade-а успешно, без возврата на предыдущую версию бд? как минимизировать или вообще избежать простоя всей системы во время upgrade-а? какие действия необходимо выполнить после успешного upgrade-а PostgreSQL? Я также расскажу про две наиболее популярные процедуры апгрейда PostgreSQL - pg_upgrade и pg_dump/pg_restore, плюсы и минусы каждого из методов и расскажу про все типичные проблемы на всех этапах этой процедуры, и как их избежать.

    Доклад будет интересен как новичкам так и тем ДБА которые уже давно работают с PostgreSQL, но хотят побольше узнать о том как правильно планировать и проводить upgrade максимально безболезненно.