Сообщение Re[67]: Тормознутость и кривость linq от 14.04.2016 11:53
Изменено 14.04.2016 12:02 Serginio1
·>Здравствуйте, Serginio1, Вы писали:
S>> Я плохо знаю англицкий. Переведи
·>Они говорят что отказываются от систем генерации sql запросов (EF, L2S, etc).
·>Отказываются от использования хранимых процедур, осталась только одна, которую они собираются выпилить как только так сразу.
S>>
·>S>>I don't think EF/L2S generated code is any better than stored procedures, my personal feelings are that they're both bad for different reasons *for us*. Dapper and raw SQL let's us tune queries the way we want, manage them trivially (all in git, since they're just part of the code), and get all of the wins that stored procedures allow us without the downsides (as I see them) of the abstraction.
Я не думаю, что EF/L2S генерированный код хоть в чём то лучше хранимок, я считаю, что *для нас* они оба плохие по разным причинам. Dapper и SQL позволяют нам тонко настраивать запросы нужным нам способом, ими легко манипулировать (всё в git, т.к. они просто часть кода), и получать все преимущества которые дают хранимки, при этом без их проблем (как мне кажется) с абсрагированием.
·>В общем, я почти о том же уже говорил
Дата: 17.03.16
S>> Я так понимаю, что они используют пакетные запросы. Но в них можно использовать и CLR
·>Что такое пакетные запросы и причём тут clr?
Когда в одном запросе несколько Select,Insert итд. Могут возвращаться несколько результатов. Кстати Linq не поддерживает их.
CLR к тому, что можно большую часть кода выводить на сервер, для ускорения доступа к БД и уменьшения трафика.
В свое время на 1С сервер приложений и SQL жили на одном сервере. После того как нагрузка увеличилась пришлось разносить из по разным серверам с гигабитным обменов. Скорость мелких запросов резко упала, но зато в общем производительность увеличилась.
·>В любом случае, как я понял, они тупо пишут голые sql-запросы прямо в коде, и по возможности избавляются от l2s-кода/хранимок, которые были написаны на начальных этапах проекта (прототипировании).
Ну они могут это позволить, так как количество кода там не так много, как например с учетными системами типа ERP. И все зависит от сложности запросов.
При том, что у них еще первый LinqToSq.
·>Здравствуйте, Serginio1, Вы писали:
S>> Я плохо знаю англицкий. Переведи
·>Они говорят что отказываются от систем генерации sql запросов (EF, L2S, etc).
·>Отказываются от использования хранимых процедур, осталась только одна, которую они собираются выпилить как только так сразу.
S>>
·>S>>I don't think EF/L2S generated code is any better than stored procedures, my personal feelings are that they're both bad for different reasons *for us*. Dapper and raw SQL let's us tune queries the way we want, manage them trivially (all in git, since they're just part of the code), and get all of the wins that stored procedures allow us without the downsides (as I see them) of the abstraction.
Я не думаю, что EF/L2S генерированный код хоть в чём то лучше хранимок, я считаю, что *для нас* они оба плохие по разным причинам. Dapper и SQL позволяют нам тонко настраивать запросы нужным нам способом, ими легко манипулировать (всё в git, т.к. они просто часть кода), и получать все преимущества которые дают хранимки, при этом без их проблем (как мне кажется) с абсрагированием.
·>В общем, я почти о том же уже говорил
Дата: 17.03.16
Про миграцию https://msdn.microsoft.com/ru-ru/data/jj591621.aspx
S>> Я так понимаю, что они используют пакетные запросы. Но в них можно использовать и CLR
·>Что такое пакетные запросы и причём тут clr?
Когда в одном запросе несколько Select,Insert итд. Могут возвращаться несколько результатов. Кстати Linq не поддерживает их.
CLR к тому, что можно большую часть кода выводить на сервер, для ускорения доступа к БД и уменьшения трафика.
В свое время на 1С сервер приложений и SQL жили на одном сервере. После того как нагрузка увеличилась пришлось разносить из по разным серверам с гигабитным обменов. Скорость мелких запросов резко упала, но зато в общем производительность увеличилась.
·>В любом случае, как я понял, они тупо пишут голые sql-запросы прямо в коде, и по возможности избавляются от l2s-кода/хранимок, которые были написаны на начальных этапах проекта (прототипировании).
Ну они могут это позволить, так как количество кода там не так много, как например с учетными системами типа ERP. И все зависит от сложности запросов.
При том, что у них еще первый LinqToSq.