title

text

Артур Закиров
Артур Закиров Postgres Professional Разработчик
18:00 05 февраля
22 мин

Использование pg_variables в качестве временных таблиц

PostgreSQL предоставляет возможность создания временных таблиц. Хотя временная таблица доступна только для сессии, которая ее создала, и удаляется по окончании этой сессии, вся информация о ней хранится в системном каталоге PostgreSQL. С этим связаны несколько проблем, которые затрудняют или делают невозможным использование временных таблиц в некоторых случаях. Есть различные попытки решения этой особенности, в том числе в нашей компании. Но они пока не увенчались успехом, главным образом из-за движка PostgreSQL. В докладе я хочу рассказать о довольно простом и небольшом расширении pg_variables. Оно позволяет создавать табличные переменные наряду со скалярными. Я расскажу, в каких случаях оно может заменить временные таблицы, какие у него есть достоинства и недостатки.

Слайды

Видео

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

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

    Типичные ошибки при построении высокодоступных кластеров и как их избежать

    Вы только что установили PostgreSQL и запустили ваш первый кластер, создали несколько таблиц, загрузили данные, и даже немного подкрутили конфигурацию Постгреса для улучшения производительности. Теперь вы думаете о том, как сделать ваш кластер высокодоступным. К сожалению, Постгрес не умеет сам выполнять автоматическое переключение при недоступности мастера, но, к счастью для нас, этого можно достичь с помощью сторонних утилит. Задача ясна, и вы начинаете изучать преимущества и недостатки всех утилит, чтобы выбрать лучшую. И... вы уже на неправильном пути, потому что в первую очередь вы должны определиться со значениями SLA, RTO и RPO. В этом докладе я планирую рассказать о ряде ошибок, которые допускают администраторы баз данных при настройке и эксплуатации высокодоступного кластера Постгреса с автоматическим переключением.

  • Александр Кузьменков
    Александр Кузьменков Postgres Professional Программист
    45 мин

    Новые планы выполнения запросов в PostgreSQL 11 и будущих версиях

    Одна из важных задач СУБД -- по декларативному SQL-запросу построить эффективный план его выполнения, используя разные алгоритмы сканирования и объединения таблиц. Над улучшением планирования запросов идёт непрерывная работа. Какие методы применяет PostgreSQL, чтобы получить эффективный план, что нового в этой области в версии 11, и что сейчас находится в разработке? Например, при планировании запроса можно удалять ненужные соединения, или сводить внешние и полусоединения к внутренним. Есть патчи, позволяющие выполнять merge join по пересечению интервалов, или улучшающие оценку селективности соединения с помощью многоколоночной статистики. Если говорить о сканировании отдельных таблиц, покрывающие индексы позволяют чаще использовать index-only scan. Инкрементальная сортировка и более точная оценка стоимости сортировки улучшают планы, где нужен сортированный вывод, например, для GROUP BY и ORDER BY или merge join. Мы обсудим эти и другие подобные оптимизации, которые уже реализованы или находятся в разработке.

  • Петр Грибанов
    Петр Грибанов Технологический евангелист
    22 мин

    1С:Предприятие и PostgreSQL

    • 1С:Предприятие -как среда кросс-платформенной разработки бизнес-приложений
    • 1С и PostgreSQL - вместе с 2006 года
    • Работа 1С с PostgreSQL в облачном сервисе 1cFresh
    • Что улучшено в платформе 1С:Предприятие для работы с PostgreSQL - Общие рекомендации по работе 1С с PostgreSQL.

  • Алексей Лесовский
    Алексей Лесовский PostgreSQL Consulting LLC Администратор баз данных
    45 мин

    Поиск и устранение проблем в Postgres с помощью pgCenter

    Время от времени при эксплуатации Postgres'а возникают проблемы, и чем быстрее найдены и устранены источники проблемы, тем благодарнее пользователи. pgCenter это набор CLI утилит которые является мощным средством для выявления и устранения проблем в режиме "здесь и сейчас". В этом докладе я расскажу как эффективно использовать pgCenter для поиска и устранения проблем, в каких направлениях осуществлять поиск и как реагировать на те или иные проблемы, в частности, как:

    • проверить, все ли в порядке с Postgres'ом;
    • быстро найти плохих клиентов и устранить их;
    • выявлять тяжелые запросы;
    • и другие полезные приемы с pgCenter.