pg_uprobe: Профилируем Си-шные функции PostgreSQL без боли и печали
Профилировать программы с помощью gdb/perf/ebpf/whatever бывает накладно по ряду причин. ebpf/perf выполняются в пространстве ядра, PostgreSQL работает в пользовательском пространстве, а переключение между пространстами может сильно ухудшить производительность. Также профилирование требует специальных привелегий, которых часто не хватает, и может сильно отличаться на разных операционных системах. Расширение pg_uprobe для PostgreSQL решает выше перечисленные проблемы: -не содержит внешних зависимостей аля ebpf/perf/whatever -легко установить (как и любое другое расширение) -профилирует отдельные бекенды и не только это... Приходить на наш доклад чтобы узнать как этим можно пользоваться, как оно реализовано внутри.
Слайды
Слайды доступны участникам мероприятия, выполнившим вход в личный кабинет.
Видео
Видео доступно участникам мероприятия, выполнившим вход в личный кабинет
Другие доклады
-
Александр Котин Postgres Professional TPM
Инструменты Postgres Pro для исправления, фиксации и миграции планов проблемных запросов.
Для большинства клиентских приложений существует ряд ключевых запросов, время выполнения которых не может превышать критических значений. Но из-за отставания статистик или иных причин, оптимизатор Postgres часто не может найти оптимальный план, что приводит к недопустимым задержкам. А так как запросы создаются автоматически, то исправить их со стороны клиентского приложения сложно или невозможно. В докладе расскажем о том, как можно решать такие проблемы со стороны СУБД. Покажем, как с помощью набора инструментов Postgres Pro идентифицировать такие запросы, исправлять и фиксировать планы, переносить их на реплики в автоматическом режиме, а также как осуществить перенос планов при апгрейде с 15й версии.
-
Владимир Бурба ООО Сигма Начальник управления разработки и тестирования
Использование JSONB полей вместо EAV в PostgreSQL
Успешный кейс использования JSONB полей, как основных для хранения всей бизнес информации в высоконагруженной CRM системе.
-
Егор Рогов Postgres Professional Менеджер
Сиквел и приквел: занимательная археология
Предлагаю совершить небольшое путешествие на полвека назад и посмотреть, чем жили наши коллеги. Я расскажу, как работали с базами данных до Кодда и что изменилось с изобретением реляционной теории; поговорим о зарождении первых реляционных систем — System R и Ingres; о том, как появился и завоевал популярность язык SQL; о людях, которые определили наше настоящее и в какой-то степени будущее.
-
Алена Рыбакина Postgres Professional разработчик
Адаптивный исполнитель запросов
К сожалению, уже давно известны случаи, когда оптимизатор строит неоптимальный план запрос, и часто данные случаи связаны с неверной оценкой кардинальности - из-за ожидания малого количества данных, оптимизатор предпочитает выбрать NestedLoop вместо других соединений, из-за чего время выполнения запроса может растянуться по времени. Наша команда разработала расширение SwitchJoin, которое имеет возможность, помимо основного выбранного оптимизатором пути NestedLoop, сформировать запасной, и, в случае, если количество кортежей было предсказано слишком малое, может переключаться на него.