title

text

Алексей Фадеев
Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
17:00 04 февраля
22 мин

GraphQl-бэкенд на PostgreSQL и plv8

Недавно мне пришлось поработать над проектом, где для запросов к бэкенду на .NET Core использовали GraphQl, о чём потом пожалели. Дело в том, что GraphQl-запрос представляет собой объект с динамическим набором полей и иерархией любой вложенности. Обрабатывать такие объекты на языке со статической и сильной типизацией, да ещё и через ORM, как это предлагают библиотечные решения – очень неудобно. И тогда мне пришла идея использовать plv8 и разбирать запросы в формате GraphQl прямо на стороне БД. За пару часов я написал работающий прототип, реализующий функционал, который разрабатывали более месяца! Затем было сделано несколько усовершенствований, всё это я собираюсь показать. Тем, кто собирается в своих проектах использовать GraphQl, а не REST, информация из данного доклада может особенно пригодиться и возможно поможет сэкономить уйму времени.

слайды

Видео

Другие доклады

  • Алексей Фадеев
    Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
    22 мин

    GraphQl-бэкенд на PostgreSQL и plv8

    Недавно мне пришлось поработать над проектом, где для запросов к бэкенду на .NET Core использовали GraphQl, о чём потом пожалели. Дело в том, что GraphQl-запрос представляет собой объект с динамическим набором полей и иерархией любой вложенности. Обрабатывать такие объекты на языке со статической и сильной типизацией, да ещё и через ORM, как это предлагают библиотечные решения – очень неудобно. И тогда мне пришла идея использовать plv8 и разбирать запросы в формате GraphQl прямо на стороне БД. За пару часов я написал работающий прототип, реализующий функционал, который разрабатывали более месяца! Затем было сделано несколько усовершенствований, всё это я собираюсь показать. Тем, кто собирается в своих проектах использовать GraphQl, а не REST, информация из данного доклада может особенно пригодиться и возможно поможет сэкономить уйму времени.

  • Иван Панченко
    Иван Панченко Postgres Professional рзаместитель генерального директора
    90 мин

    Интересные случаи использования JSON

    В этом небольшом мастер-кластер классе мы решим несколько программистских задач, в которых JSON эффективно расширяет возможности SQL, и превращает реляционную базу в почти готовый сервер приложений. :)
    Рассмотрим использование агрегатов, как готовых, так и самодельных, попробуем извлечь пользу из рекурсивного характера JSON.

  • Николай Аверин
    Николай Аверин Miro Backend engineer
    22 мин

    pg_repack и deferred constraints

    pg_repack является популярным инструментом для устранения bloat-a таблиц и индексов в постгресе. В большинстве случаев он отлично справляется с проблемой. Но как оказалось, в случае использования такой фичи постгреса как deferred ограничения, использование pg_repack либо сильно усложняется, либо становится невозможным. Я расскажу о том, как мы обнаружили эту проблему и опишу возможные способы ее решения - от встроенных средств постгреса до небольшого патча pg_repack.

  • Антон Дорошкевич
    Антон Дорошкевич ИнфоСофт Руководитель ИТ
    180 мин

    Мастер-класс настройки PostgreSQL для 1С

    Вас ждёт увлекательное путешествие по настройкам PostgreSQL. Мы поговорим о том что с 1С не так или наоборот так, что под неё надо специально настраивать СУБД. Обсудим подходы к тестирования скорости работы 1С. Рассмотрим различные варианты схем резервного копирования и обеспечения отказоустойчивости. В процессе мы сравним скорость работы 1С на PostgreSQL настроенном по умолчанию со скоростью работы на настроенном для 1С PostgreSQL. Так же мы создадим реплику PostgreSQL, и переключим на неё Сервер 1С "на живую", посмотрим что увидят пользователи 1С при этой операции. И отдельный блок будет посвящён PostgresPro Enterprise Edition, как использование его приемуществ влияет на скорость работы 1С.