Временные таблицы как наследие перехода с MS SQL. Проблемы, оптимизация, подходы
Использование временных таблиц в PG несет дополнительные проблемы использования ресурсов сервера и скорости работы запросов. Но бывает, что без них никак не обойтись, особенно при миграции кода с MS SQL, если первичный код их активно использовал при наличии логики на уровне БД. Доклад посвящен проблемам использования временных таблиц при переходе с MS SQL и подходам к их решению стандартными возможностями PG в зависимости от сценариев в коде.
Слайды
Жуковец.pptxВидео
Видео доступно участникам мероприятия, выполнившим вход в личный кабинет
Другие доклады
-
Александр Каленик Kontur Software EngineerАндрей Бородин Яндекс Разработчик
Как мы ускорили GiST. Новости PostGIS 3.2
В докладе я расскажу о новом методе для быстрого создания GiST индекса в PostgreSQL 14, какие проблемы были выявлены при добавление поддержки нового метода в PostGIS и как они будут решены в будущем. Так же в докладе будет обзор нововведений PostGIS 3.2.
-
Александр Кукушкин Zalando SE Database Engineer
Как Patroni решает проблему потери слотов логической репликации?
Более семи лет назад вышел PostgreSQL 9.4, в котором впервые появились функции логического декодирования и слоты репликации. И, спустя несколько лет, на базе этих функций в PostgreSQL 10 наконец то появилась поддержка логической репликации встроенная в ядро. Казалось бы, наступило солнечное будущее к которому мы так долго шли, если бы не пара неприятных моментов: логическая репликация не работает на репликах, плюс в PostgreSQL нет механизмов создания логических слотов на реплике. Это означает что при переключении мастера на новый узел слоты репликации теряются и на практике делает невозможным использование логической репликации и CDC для серьезных промышленных решений.
Postgres-hackers уже много лет пытаются найти решение данной задачи, но к сожалению большинство попыток и горяих дискуссий в рассылке не привели ни к чему конкретному. Но, оказывается в PostgreSQL 11 была добавлена одна маленькая функция, которая позволила решить проблему потери слотов логической репликации с помощью внешних инструментов.
В докладе я расскажу как Patroni решает данную проблему используя исключительно на возможности PostgreSQL. Мы поговорим о плюсах и минусах данного решения, и попытаемся понять безопасно ли это немного погрузившись во внутренности Postgres.
-
Анатолий Анфиногенов АО "ВНИИЖТ" Зам. директора научного центра - начальник отдела разработки ПО
Жизнь после импортозамещения: некоторые особености настройки БД и хранимых процедур
Многие литературные произведения заканчиваются свадьбой, а про дальнейшую жизнь героев читателю скупо сообщают, что они жили долго и счастливо. В 2019 распределенное серверное приложение, работающего 24/7 на полигоне 16 железных дорог от Калининграда до Хабаровска плюс несколько БД центрального уровня, было перенесено с Oracle 11g SE на ванильный PostgreSQL 11.9. Но наша история не закончилась на успешном импортозамещении - жизнь продолжалась и порой преподносила сюрпризы. Мы столкнулись с некоторым количеством эксплуатационных проблем, часть из которых удалось решить за счет реорганизации данных, часть - за счет изменения хранимых процедур, а еще часть - за счет изменения парамеров PostgreSQL. Решение наших проблем было бы невозможным без встроенной в приложение системы логирования и профилирования. Доклад посвящен примерам успешного диагностирования и решения проблем с производительностью приложения для БД PostgreSQL, все взаимодействие с которым осуществляется только через слой хранимых процедур.
-
ДДенис Волков Яндекс Разработчик
SPQR - легковесное шардирование
Stateless Postgres Query Router - новая система для роутинга запросов по диапазоном. Система написана на Go и стремится решить проблемы OLTP шардирования. Также система предполагает управление перемещением данных между шардами.