Тёмный

Алексей Фадеев - Не EF Core единым: альтернативная ORM LINQ to DB и ее возможности 

DotNext — конференция для .NET‑разработчиков
Просмотров 2,3 тыс.
50% 1

Ближайшая конференция - DotNext 2024, 10 - 11 сентября, Москва + online
Подробности и билеты: jrg.su/x2GKnA
- -
Скачать презентацию с сайта DotNext - jrg.su/xzaMhg
Бездумное использование ORM-библиотек приводит к большому росту нагрузки на БД, администраторы баз данных не дадут соврать. Но ORM-библиотеки совершенствуются, разработчики учатся на своих и чужих ошибках, и многие научились писать код для ORM, генерирующий вполне оптимальные запросы для типовых операций. Но есть еще одна проблема ORM - ограниченность инструментов. Популярная СУБД Postgres имеет массу операторов и конструкций, выходящих за рамки стандарта SQL (да и в других СУБД такое встречается).
ORM-библиотека LINQ to DB имеет важную особенность: она позволяет очень просто (буквально в пару строк) писать расширения, реализующие любой SQL-оператор или конструкцию.
В этом докладе Алексей показал, как строить нетипичные для ORM запросы, например, с выражениями CTE (в том числе рекурсивными), табличными функциями и LATERAL JOIN. А также привел примеры использования специфичной для PostgreSQL функциональности: работы с массивами и jsonb, агрегатами array_agg и jsonb_object_agg, использование встроенного полнотекстового поиска, поиск по геоданным «KNN». Помимо демонстрации возможностей ORM LINQ to DB доклад может быть интересен, как раскрывающий специфическую функциональность самой СУБД Postgres, о котором многие разработчики даже не подозревали.

Наука

Опубликовано:

 

4 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 4   
@artemadeev7444
@artemadeev7444 21 день назад
Кейс конечно не частый но как будто расширения для кастомный или только для функций посгрес дает нам жесткую привязку к посгресу, что не самое приятное когда ее вдруг придется менять.
@0x1000000
@0x1000000 24 дня назад
Спасибо за доклад! LINQ to DB действительно достойный продукт. Однако основными проблемами доступа к базам данных на основе LINQ, на взгляд являются: 1) Неоднозначность между конструкциями языка C# и SQL, что требует глубокого понимания внутреннего устройства ORM для создания предсказуемых запросов. 2) Трудоемкость написания динамических запросов. Помаявшись в свое время с разными ORM и хранимыми процедурами, я как водится написал свое решение, которое воспроизводит AST языка SQL: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-Zd-fCb8NimA.html. Благодаря перегрузке операторов C# идеально подошёл для цели симуляции SQL прямо в коде.
@user-ix9vk5if5b
@user-ix9vk5if5b 23 дня назад
35:39 закладка для себя
@MrCommanderKid
@MrCommanderKid 25 дней назад
KNN прикольная штука, не знал. Jsonb похожи на bson от монги😮
Далее
Николай Пьяников - Чистый DI
58:50
#kikakim
00:31
Просмотров 10 млн
Базы данных. NoSQL. MongoDB
36:10
Просмотров 29 тыс.
Чего ожидать от HTTP/3 + Go
51:07
Просмотров 7 тыс.
КАК НАЧАТЬ ПОНИМАТЬ LINUX (2024)
21:10
Это Xiaomi Su7 Max 🤯 #xiaomi #su7max
1:01
Просмотров 2,1 млн
КРУТОЙ ТЕЛЕФОН
0:16
Просмотров 6 млн
НОВЫЕ ФЕЙК iPHONE 🤯 #iphone
0:37
Просмотров 322 тыс.