![Александр Федоров Александр Федоров](/media/2018/12/07/ece-2018.jpg.180x180.jpg)
![Андрей Хитрин Андрей Хитрин](/media//2018/01/23/me_beaver_foto.JPG.180x180.jpg)
Самый важный инструмент: Xobot IDE
В мире программирования особняком стоит создание исходного кода для "процедурных расширений" баз данных. Большинство СУБД предлагает процедурные языки и "хранимые процедуры" для создания процедурных расширений. В Postgres количество поддерживаемых официально и не очень процедурных языков уже перевалило за десяток.
Традиционно на хранимые процедуры возлагают множество задач: трудно устоять перед соблазном исполнить операцию над данными непосредственно в хранилище, особенно в Enterprise разработке. Такой подход довольно быстро приводит к размазыванию бизнес-логики по телу хранимых процедур и резко повышает стоимость поддержки и развития системы в целом.
Особенности жизненного цикла хранимых процедур затрудняют применение стандартных инструментов и практик по контролю изменений. Необходимо адаптировать работу с хранимыми процедурами к стандартам Change Management, оставаясь в рамках привычных для разработчика действий.
Мы рассмотрим проблемы разработки процедурных расширений и обсудим решения, которые мы реализуем в IDE XOBOT.
Слайды
Видео
Другие доклады
-
Дмитрий Юхтимовский Gilev.ru технический лидер
Магические фокусы с последующим разоблачением (1С+PG)
Магические фокусы с последующим разоблачением (1С+PG):
- Фокус первый. Как убедить бухгалтерию купить новый сервер.
- Фокус второй. Как показать, что MS SQL быстрее PostgreSQL.
- Фокус третий. Как показать, что PostgreSQL быстрее MS SQL Server.
-
Петр Ярмуз Allegro sp. z.o.o Senior Database Engineer
Хакинг с Postgres 11 - pg_threads
Мое выступление будет посвящено написанию расширений для Postgres. Я создал модуль pg_threads, который реализует упрощенную версию API POSIX потоков внутри базы данных Postgres. Он дает разработчикам баз данных новый мощный инструмент для параллельного написания кода и использования преимуществ многоядерной CPU. Существует дополнительное API для транзакционных и нетранзакционных IPC между потоками. Я покажу пример приложения, в котором реализовано преимущество нового API - линейное масштабирование равномерно на два узла. Презентация сопровождается живой демонстрацией на vagrant с двумя виртуальными машинами на Ubuntu и двуми базами данных Postgres.
-
Артемий Рябинков Avito Software Engineer
Практики, особенности и нюансы при работе с Postgres в Go
В докладе расскажу о практиках работы с Postgres в сервисах на Go. Поговорим о преимуществах и недостатках основных инструментов, которые принято использовать при работе с Postgres в Go. Конечно, коснёмся нюансов, которые нужно учитывать, когда ваши сервисы работают внутри Kubernetes облака. Также расскажу об опыте Avito в предоставлении базы данных разработчикам продукта. Доклад будет интересен разработчикам, которые хотят избежать проблем при работе с Postgres и полезен DBA, которые хотят узнать с какими трудностями сталкиваются клиенты их базы данных.
-
Мирослав Шедиви solute GmbH Senior Software Developer
Асинхронный Python и PostgreSQL с использованием asyncpg
Возможно, Python не самый быстрый язык программирования на CPU, но быстрая и простая разработка на нем экономит массу усилий того, кто находится между креслом и клавиатурой. Поскольку программные клиенты базы данных большую часть времени находятся в ожидании отклика от сервера базы данных, аснихронная функциональность Python, ставшая доступной в последних версиях (3.5+), может оказаться полезной для значительной оптимизации скорости работы приложения за счет того, что время подготовки ответа сервером может быть использовано приложением для работы над другими задачами. Асинхронный интерфейс между Python и PostgreSQL называется "asyncpg". В ходе мастер-класса я разберу работу с данной библиотекой и напишу короткое приложение, использую некоторые полезные свойства библиотеки.