title

text

Андрей Лепихов
Андрей Лепихов Postgres Professional Программист
15:00 01 марта
22 мин

Постгрессовый планнер с памятью

Постгрес умеет строить оптимальные планы запросов для большинства практических случаев. Однако иногда, по объективным причинам, для сложных запросов или из-за ошибок в самом планнере, он может ошибаться и выдавать неоптимальный план. Из-за этого, время выполнения такого запроса может возрастать в десятки раз. Если запрос выполняется часто, то из раза в раз этот запрос выполняется дольше, чем мог бы, и СУБД в целом выдает меньший TPS. Если планнер сможет фиксировать свои ошибки и учитывать их при последующем планировании того же запроса, то это позволит улучшать характеристики СУБД в процессе её эксплуатациии. Мы представляем результаты разработки расширения для СУБД PostgreSQL, которое хранит историю выполнения запросов и реализует рекомендательный механизм для планнера. Показываем, как знание о ранее выполнявшихся запросах позволяет улучшить выполнение последующих.

Видео

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Fabrízio Mello
    Fabrízio Mello OnGres Inc Разработчик PostgreSQL
    Álvaro Hernández
    Álvaro Hernández OnGres Founder
    45 мин

    Сетевой фильтр PostgreSQL для EnvoyProxy

    Как вы осуществляете мониторинг Postgres? Какую информацию вы собираете и насколько она помогает решать возникающие проблемы? Что если вам хочется или нужно логировать все запросы? Высоконагруженные базы данных могут выйти из строя при таком подходе.

    В OnGres мы стараемся сделать СУБД PostgreSQL более прозрачной для мониторинга. Поэтому мы вместе с командой Tetrate работали над Сетевым фильтром Envoy для PostgreSQL, расширением, призванным обеспечить и улучшить прозрачность для мониторинга входящего трафика в кластерной инфраструктуре. Это бесплатное расширение с открытым исходным кодом доступно для всех участников сообщества. Вы можете использовать его везде, где пользуетесь Envoy. Оно позволит вам автоматически собирать статистику и устранять проблемы сетевого трафика. Данный доклад обеспечит глубокое погружение в декодирование протокола PostgreSQL и прокси-фильтры Envoy. В рамках этого выступления также будут рассмотрены все возможности сетевого фильтра, его развёртывание и использование в любом окружении.

    Полезные ссылки:

  • Pavel Stehule
    Pavel Stehule freelancer Независимый консультант и разработчик
    22 мин

    Как использовать pspg

    pspg - это unix-совместимый инструмент для постраничного просмотра данных, разработанный специально для Postgres-клиента psql. На сегодняшний день его возможности не ограничиваются обычным просмотром данных. Он может работать в режиме приложения или инструмента для открытия CSV и TSV файлов. В рамках доклада я постараюсь продемонстрировать основные возможности данного приложения.