title

text

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

ORM LinqToDb: используем возможности Postgres по максимуму

ORM-библиотеки широко используются при разработке бэкенда – примем это как данность. ORM-библиотеки совершенствуются, разработчики учатся на своих и чужих ошибках, и многие научились писать код для ORM, генерирующий вполне оптимальные запросы для типовых операций. Но есть ещё одна проблема ORM – ограниченность инструментов. Особенно это актуально для Postgres, имеющего массу операторов и конструкций (как в ядре, так и в расширениях), выходящих за рамки стандарта SQL.

ORM-библиотека LinqToDb имеет важную особенность: она позволяет очень просто (буквально в одну строку) писать расширения, реализующие любой SQL-оператор или конструкцию. Полнотекстовый поиск, KNN, CTE (в том числе рекурсивные), работа с массивами и jsonb, array_agg и jsonb_object_agg, табличные функции и LATERAL JOIN – всё это без труда можно использовать в ORM, что я и продемонстрирую в данном докладе!

Слайды

Фадеев.pptx

Видео

Видео доступно участникам мероприятия, выполнившим вход в личный кабинет

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

  • Андрей Зубков
    Андрей Зубков Postgres Professional Руководитель группы систем мониторинга
    45 мин

    Утилиты стратегического мониторинга pg_profile/pgpro_pwr. Архитектура, настройка, возможности

    Основная задача стратегического мониторинга - предоставление количественной информации о наиболее ресурсоёмких активностях СУБД с целью проведения оптимизации. Стратегический мониторинг сам по себе никакие проблемы не решает, но может подсказать на что стоит обратить внимание. Одним из таких средств является расширение pg_profile/pgpro_pwr. Об их архитектуре, возможностях, особенностях работы и способах применения и пойдёт речь.

  • Андрей Бородин
    Андрей Бородин Яндекс.Облако Руководитель подразделения разработки РСУБД с открытым исходным кодом
    45 мин

    Обзор некоторых интересных исторических уязвимостей Postgres

    Я совсем не security-специалист. Но от этого будет только понятнее! Я разобрался в наиболее интересных уязвимостях старых версий Postgres и расскажу как они работали.

  • Игорь Мельников
    Игорь Мельников Postgres Professional Consultant
    45 мин

    Поддержка пакетов Oracle (packages) в СУБД Postgres Pro 15 Enterprise

    Одной из основных проблем при миграции с СУБД Oracle на PostgreSQL, являются пакеты PL/SQL.

    В СУБД PostgreSQL отсутствует такой функционал - это приводит к необходимости переписывания (вплоть до его редизайна!) кода Oracle PL/SQL на PL/pgSQL.

    В новой версии своего флагманского дистрибутива Postgres Pro 15 Enterpise компания Postgres Pro добавила поддержку функциональности пакетов: расширен синтаксис PL/pgSQL и добавлены новые механизмы в среду выполнения хранимых процедур. В докладе речь пойдет идет о поддержке функциональности пакетов в Postgres Pro 15 Enterpise: - группировка типов переменных процедур и функций в пакет; - поддержка секции инициализации пакетов; - поддержка глобальных переменных пакета доступных в течении всей "жизни" сессии.

    Также в докладе будут рассмотрены особенности миграции пакетов из Oracle в СУБД Postgres Pro Enterprise.

  • Christopher Travers
    Christopher Travers Independent Community Member Principal Engineer
    45 мин

    Crazy things you can do with PostgreSQL Indexes

    Of the relational databases, PostgreSQL is fairly unique in the indexing capabilities it offers. While most of us are familiar with the use of indexes to speed performance when filtering on columns, PostgreSQL indexes can do far more than this.

    This talk will focus on cases where difficult problems were solved through the creative use of indexes. Each of these cases is from an episode in my career.

    In this presentation, you will learn:

    • The general index access methods PostgreSQL supports out of the box
    • How the planner uses indexes (only on a high level)
    • Functional indexes
    • Creative use of Index Only scans.

    This is a talk for all audiences. The talk is primarily for beginner to intermediate users, but should have enough information for more advanced users to get some insight or inspiration from the talk as well.