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

Видео

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

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

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

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

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

  • Александр Никитин
    Александр Никитин ЗАО ЦФТ Администратор баз данных
    45 мин

    Борьба с блоатом

    Каждый администратор баз данных так или иначе сталкивался с тем, что таблицы и индексы в PostgreSQL иногда могут значительно увеличиваться в размерах. Зачастую поиск причины такого роста приводит нас к выводу, что объекты "раздулись". В докладе мы поговорим о причинах такого поведения, подготовим тестовую среду для определения того какой же метод борьбы с блоатом является самым подходящим. Сравним несколько утилит по борьбе с блоатом, а также познакомимся с ещё одним инструментом, который позволяет нам бороться с этим явлением более эффективно. Этот доклад будет полезен как начинающим, так и опытным администраторам PostgreSQL.

  • Михаил Шурутов
    Михаил Шурутов СтандартПроект старший администратор баз данных
    45 мин

    Набор Ansible-ролей для PostgreSQL

    В данном докладе рассмотрен набор ролей Ansible как для разворачивания одиночных инстансов СУБД PostgreSQL с репликацией, так и для построения отказоустойчивых решений с помощью кластерных решений: patroni+etcd, patroni+consul, stolon+etcd, stolon+consul. Соответственно, рассмотрен вопрос, почему набор ролей, а не какое-либо "решение".

  • Владимир Сердюк
    Владимир Сердюк Softpoint Генеральный директор
    45 мин

    Гетерогенная распределенная система – как способ безопасного перехода с MSSQL Server на PostgreSQL, а также снижения санкционных рисков

    Данный доклад предназначен в первую очередь для компаний, а точнее для их ИТ служб, эксплуатирующих российские системы 1С 8.х и имеющих возможность работать как на СУБД MSSQL Server, так и PostgreSQL. Мы живем в уникальное время, когда наличие в своем арсенале гетерогенной ИТ-системы (системы, имеющей распределенную архитектуру, где каждый экземпляр базы данных работает под управлением разных СУБД и/или имеет разную структуру данных) является оправданным как с экономической точки зрения, так и с учетом возможных рисков. С одной стороны, мы храним данные и пользуемся СУБД с предсказуемым поведением и открытым кодом, независимо от политической обстановки. С другой стороны, мы при таком подходе пользуемся всеми преимуществами (в первую очередь производительности) мощной СУБД поддерживаемой крупнейшим вендором пускай и недружественного нам государства. Именно сейчас необходимо оценивать риски с необходимым уровнем паранойи. Возможно ведь, что данные могут быть испорчены не только на уровне логики хранения, но и методом дополнительного «скрытого» вызова конструкций типа Delete/Update на уровне движка СУБД. Поэтому сейчас актуальным становится не только мониторинг производительности ИТ-системы, но и аудит данных и их своевременная сохранность. Необходимо реализовывать процедуры верификации данных, необходимо реализовывать процедуры закрытия периодов, процедуры отказоустойчивого хранения. И соответственно, предусматривать в процедурах восстановления данных различные модели угроз. В докладе представлены варианты противодействия подобным угрозам и сценарии максимально бесшовного перехода больших баз данных на PostgeSQL, ведь именно для подобных баз проблема перевода на новую СУБД стоит особо остро.