Новые возможности Mamonsu 3.0
Mamonsu — это активный агент мониторинга для PostgreSQL, исполненный на базе zabbix. Новое мажорное обновление Mamonsu 3.0 включает в себя новые метрики, больше возможностей для визуализации данных с помощью zabbix screens, улучшенный функционал специальных инструментов Mamonsu для взаимодействия с СУБД. Помимо обзора нового функционала в докладе также затронем нюансы обновления на новую версию.
Слайды
Другие доклады
-
Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
Plv8 Framework: разработка на plv8 в IDE, с ES6, отладкой, автотестами и деплоем
Многие разработчики прикладного ПО не любят выносить логику на сторону БД (в функции) из-за отсутствия удобных средств разработки, особенно командной. С plv8 ситуация осложняется тем, что функция содержит симбиоз кода SQL и JavaScript, популярные IDE такое не поддерживают. На этом мастер классе я представлю свою разработку "Plv8 Framework", позволяющую существенно облегчить создание кода на plv8.
Суть в следующем: тот же JS-код, который будет выполняться на стороне БД, можно запустить локально, прямо на машине разработчика, с помощью node.js, который работает на основе того же интерпретатора v8. Спецфункция plv8.execute подменяется на функцию из npm-библиотеки pg-native, т.е. происходит обращение к внешней СУБД. Я продемонстрирую авторский набор средств, позволяющий:
- писать js-код в вашей любимой IDE с подсветкой синтаксиса;
- отлаживать код в реальном времени (с breakpoint, watch и т.д.);
- писать автотесты (unit-тесты), с вариантами: постгрес, SQLite, моки;
- выполнять deploy кода в СУБД;
- использовать дополнительные npm-пакеты (проблема в том, что весь код функции на plv8 должен находиться в теле этой функции, т.е. в одном файле).Инструмент можно использовать независимо от того, на чём вы разрабатываете бэкенд. Но особенную гибкость он придаёт, если вы используете языки со статической типизацией (java, C# и т.д.). Например для задач, где бэкенд является промежуточным слоем между фронтендом и СУБД, логика (или её часть) может быть вынесена в plv8/js с динамической типизацией, что может весьма облегчить процесс разработки.
Помимо возможности разрабатывать новые функции на plv8, фреймворк предоставляет набор готовых функций для выполнения CRUD-операций. Функции универсальные, не привязаны к структуре конкретной БД и могут работать на любых проектах. Их использование поможет сократить объём бэкенд разработки, на некоторых проектах - значительно.
Пожалуй, самое сложное с plv8 - установить это расширение. Но у меня хорошая новость: мои коллеги помогли подготовить докер-файлы и докер-образы для PostgreSQL версии 13 с уже установленным plv8! Теперь начать разработку на plv8 просто: нужно лишь развернуть контейнер одной командой.
Докер-файл: PostgreSQL 13 + plv8 v2.13.15
Демо-проект для участия в мастер-классе
Так же для мастер-класса пригодятся:
Node.js (желательно LTS)
IDE для js (например, бесплатная Visual Studio Code)
GraphQL Playground -
Christopher Travers DeliveryHero SE Principle Engineer
Почему методика Crew Resource Management должна применяться в СУБД-командах?
Crew Resource Management - методика, которая играет важную роль в тренировке персонала в таких областях, как авиация и атомная энергетика. Тем не менее, в IT-индустрии, эта методика до сих пор широко не внедрялась. В рамках данного доклада мы познакомимся с методикой Crew Resource Management (CRM), с проблемами, которые она решает, и почему её стоит применять во всех СУБД-командах.
Несколько кейсов, имеющих отношение к PostgreSQL, будут разобраны с технической точки зрения и с точки зрения человеческого фактора.
-
Даниил Захлыстов Яндекс.Облако Разработчик
Сжатие протокола PostgreSQL: текущий статус
Сжатие протокола PostgreSQL уже длительное время обсуждается в сообществе. За это время было высказано и протестировано множество различных гипотез, а патч на сжатие получил большое количество изменений и улучшений. В этом докладе я рассмотрю различные подходы, протестированные в ходе реализации сжатия протокола, а также расскажу про текущий статус.
-
Дмитрий Васильев Postgres Professional DBA
Мониторинг PostgreSQL: sampling plan и average active sessions своими руками
Мы в ОЗОН делаем PostgreSQL as a service. На данный момент у нас уже тысячи кластеров. Мы знаем, какие вопросы мучают разработчиков, вот самые важные из них: как понять насколько нагружена база и почему запрос начал тормозить? В докладе я расскажу как мы помогаем разработчикам ответить на эти вопросы, просто взглянув в дашборд.