PgConf.Russia 2019
PGConf.Russia – международная техническая конференция по открытой СУБД PostgreSQL, ежегодно собирающая более 500 разработчиков, администраторов баз данных и IT-менеджеров для обмена опытом и профессионального общения. В программе – мастер-классы ведущих мировых экспертов, доклады в три тематических потока, примеры лучшего опыта и разбор ошибок, гостиная разработчиков и блиц-доклады из зала.
Темы встречи
- PostgreSQL на переднем крае: большие данные, интернет вещей, блокчейн
- новое в PostgreSQL и вокруг: развитие PostgreSQL и его экосистемы
- PostgreSQL в реальных системах: архитектура, миграция, эксплуатация
- Использование PostgreSQL в платформе 1С
- PostgreSQL в геоинформационных системах (GIS)
Доклады
Архив докладов
-
Ирина Фаст Сберобразование DBAИмея опыт администрирования Oracle, я обнаружила некоторые отличительные особенности в администрировании PostgreSQL, которыми я хотела бы поделиться с вами. Мы рассмотрим набор необходимых инструментов для администраторов баз данных, их возможности и полезность по сравнению с аналогами Oracle. Также я собираюсь обобщить основные различия между Oracle DB и PostgreSQL с точки зрения администрирования.
-
Christopher Travers DeliveryHero SE Principle EngineerДанное тематическое исследование посвящено разбору случая, когда мы решили приложить усилия к восстановлению данных. Доклад подойдет для всех пользователей: как для новичков, так и для продвинутых администраторов баз данных PostgreSQL. Начинающие пользователи получат понимание того, что представляет собой восстановление данных и чем оно не является, чего можно ожидать, каким образом построить работу с привлеченными экспертами, чтобы получить на выходе наилучший результат. В тоже время, более продвинутые пользователи и эксперты PostgreSQL также получат честную порцию технических аспектов.
-
Федор Сигаев Postgres Professional технический директор, ведущий разработчик PostgreSQLПостгрес хорошо известен своей расширяемостью, которая делает его универсальным и пригодным практически для любого проекта. Многие расширения хорошо известны и широко используются, как, например, PostGIS - фактический стандарт для open sourc'ных ГИС, или hstore - расширение для хранения данных "ключ-значение". Я расскажу о менее известных, но очень полезных расширениях, которые дают полезную функциональность и/или повышают производительность.
Благодаря наличию API для создания расширений, их может разрабатывать программист без компетенции "ядерного" разработчика, и создавать в них свои функции, типы данных, операторы, индексы, и даже методы доступа (знаете, что это?)
Для этого доклада из сотен расширений я выбрал два:
- VOPS - заметно улучшает производительность OLAP-запросов с помощью векторных операций,
- pg_variables - обеспечивающее сессионные переменные, которые можно использовать в том числе и на read-only репликах
-
Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.Многие специалисты, обслуживающие СУБД не любят эти три буквы - ORM, потому что не раз видели сгенерированные многоэтажные запросы для простейших операций. Однако, практика показывает, что источник проблемы - не ORM, а разработчики, не умеющие ими пользоваться. В этом докладе я расскажу основные принципы, как писать код для ORM, генерирующий «хорошие» запросы, а также покажу «плохие» примеры кода, и что из них получается на выходе. Основные идеи – при написании кода мыслить в SQL, научиться заранее видеть, какой запрос будет сгенерирован. Но даже обретя такой навык нужно всегда проверять выходной SQL для сложных запросов. Приведу конкретный пример, когда незначительное изменение в ORM-логике меняет объём выходного SQL в десятки(!) раз. Расскажу о дополнительных инструментах и хитростях. А именно – отключение трекинга, конструкция Include, разный синтаксис для JOIN, как получить больше данных за меньшее число запросов, как эффективно писать запросы с группировкой, и зачем нужны проекции. Не обойду стороной и случаи, когда эффективно решить задачу средствами ORM не получается (например, запросы с рекурсией). Кроме SELECT-запросов немного расскажу о средствах Batch-Update/Delete, позволяющих обновлять и удалять данные средствами ORM без загрузки на клиент. Несколько слов будет и о вставке – как заставить ORM быстро вставлять большие объёмы данных через Multi-Insert и COPY. Будет упомянуто и о поддержке в ORM специфичных для PostgreSQL типов данных – массивов, hstore и jsonb. Может возникнуть вопрос – а есть ли вообще смысл использовать ORM, раз нужно столькому научиться. Преимущества их использования есть, и об этом тоже будет сказано. Все примеры будут на технологии Entity Framework для платформ .Net Core и .Net Framework на языке C#. Для Hibernate/NHibernate могут быть отличия в некоторых тонкостях, но основные принципы те же, поэтому доклад будет полезен разработчикам, использующим различные технологии.
Фотографии
Архив фотографий