Greenplum: командный центр вместо pg_stat_statements
В greenplum используется отличный от PostgreSQL подход для сбора статистики выполнения запросов: вместо pg_stat_statements - командный центр. Командный центр - отдельное приложение. А значит нет необходимости хранить статистику в разделяемой памяти. Но нужно отправлять ее отдельному процессу. Расскажу: - как мы его реализовали; - почему использование grpc в postgreSQL - плохая идея и с какими еще проблемами мы столкнулись; - какие хуки было бы неплохо добавить в postgreSQL; - как не тормозить на отправке данных; - какие новые возможности появляются у отдельного приложения.
Слайды
Слайды доступны участникам мероприятия, выполнившим вход в личный кабинет.
Видео
Видео доступно участникам мероприятия, выполнившим вход в личный кабинет
Другие доклады
-
Дмитрий Руденко Тинькофф Центр Разработки Ведущий инженер баз данных
Что в черном ящике? Или как помочь разработчику понять, что требует оптимизации в БД
Всем нам хочется быть немножко Шерлоками и расследовать интересные и запутанные дела. Жизнь, однако, вносит свои коррективы и большинство задач на выходе имеют банальные решения вроде - добавьте индекс по такому-то полю. Обилие баз и команд приводит к постоянному фону таких задач. Ситуацию усложняет повсеместное использование всякого рода ORM. И сами разработчики и ORM, зачастую не особенно беспокоятся вопросами эффективного доступа к данным (построение запросов, наличие и оптимальность состава индексов итд). В докладе рассматривается инструмент мониторинга и анализа состояния баз данных Postgres созданный на основе Grafana. Особенно подробно рассмотрены части, которые помогают разработчикам самостоятельно понять, где и каким образом образуются слабые места в его взаимодействии с базой.
-
Андрей Черняков UIS, CoMagic Разработчик баз данных, техлид
pg_migration - система работы с кодом, как не дать программистам все сломать
Мы долгое время катили релизы на базы данных руками. Но когда их количество стало больше 50, выкладывать релизы руками стало больно, даже при наличии скриптов. Стало понятно, что нужен какой-то инструмент. Так как готовые инструменты нам не подошли, мы решили написать свою систему на основе пайплайнов ci/cd в gitlab.
В результате получилась удобная система работы с кодом: - автоматические проверки практически не дают сделать что-то не правильно (plpgsql_check, авто-тесты и т.д.) - исключается возможность расхождения кода в живой БД и в репозитории - включает в себя несколько утилит (написанных на python), которые можно использовать как в пайплайнах, так и непосредственно из консоли - поддерживаются два режима раскатки релизов: по кнопке из gitlab и полностью автоматический (по ключевому слову auto_deploy в сообщении к коммиту)
-
Александр Попов Postgres Professional Инженер
pgpro_rp - Приоритизация ресурсов
Рассказ о расширении, с помощью которого можно ускорить выбранные запросы. В системах с большой нагрузкой часто есть необходимость ускорить важные запросы и притормозить менее приоритетные. С помощью расширения pgpro_rp можно выставить приоритет на работу запросов.
-
Александр Попов Postgres Professional Инженер
pgpro_redefinition - расширение для онлайн манипуляций с большими таблицами
Рассказ про расширение для перестройки больших таблиц без блокировок (почти)
pgpro_redefinition - новое расширение, которое позволяет перестраивать таблицы без остановки приложения. Например секционировать большую таблицу, добавить колонку с default значением, разбить таблицу на 2 таблицы и даже создать копию таблицы на другом сервере СУБД.