powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ORM vs sql
25 сообщений из 451, страница 12 из 19
ORM vs sql
    #37605993
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыLelouchА если я в этом инструменте сначала вызову метод Where а потом Join? он переместит строку Join выше условия?

а если я с головой не дружу, компьютер мне поможет? :) в linq ты не можешь случайно переставлять все подряд местами, иначе получится что из базы выходит все, а фильтрует приложение.
LelouchПрям одно и тоже, особенно с типизацией и возможностью обработки noSQL (для EF достаточно найти провайдера. а для этой библиотеки что?)
Я уже писал выше свое отношение к смене сервера, нужно следить за дискуссией. Так что если нужен nosql, я буду сразу на нем писать. Кстати mybatis поддерживает только sql, впрочем как и linq to sql.
В EF могу, генерация SQL не зависит от построения LINQ запроса.
...
Рейтинг: 0 / 0
ORM vs sql
    #37605996
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыЛюбой публичный сервис, задача которого — обрабатывать выборки хотя-бы со скоростью пару десятков тысяч запросов в секунду по базе размером, ну пусть от 50гигабайт, уже лучше давно пора начать избавлять от хибернейта и прочих монстров
Если у вас 20к запросов в секунду - то NHibernate не самая большая ваша проблема. :) Ни один сервер БД не выдержит такой нагрузки. Это один фиг распределённая система, никакой ACID там и в помине не будет.
...
Рейтинг: 0 / 0
ORM vs sql
    #37605998
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolYUtorзыЛюбой публичный сервис, задача которого — обрабатывать выборки хотя-бы со скоростью пару десятков тысяч запросов в секунду по базе размером, ну пусть от 50гигабайт, уже лучше давно пора начать избавлять от хибернейта и прочих монстров
Если у вас 20к запросов в секунду - то NHibernate не самая большая ваша проблема. :) Ни один сервер БД не выдержит такой нагрузки. Это один фиг распределённая система, никакой ACID там и в помине не будет.
да ладно
...
Рейтинг: 0 / 0
ORM vs sql
    #37605999
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EnomayДругое дело когда мы начинаем примазывать тут использование хранмых процедур. Тут уже отследить где какая выборка, становится сложнее. Хранимые могут вызываться другими хранимыми и так далее. Проблема в том, что DAL слой с ORM при поддержке современных IDE очень легко поддерживать, рефакторить.

Что, использование ORM уже запрещает использование хранимок? Не использование ORM говорит о том, что все написано на хранимках? Что за стереотипы.
Enomayопять же, это будет тестируемо и как минимум будет содержать значительно меньше синтаксических ошибок, в силу строгой типизации.
чтобы что-то было тестируемо, нужно заложить это в архитектуру. Три буквы в аббревиатуре не делают из говна конфетку. А поскольку тестировать можно много чего, будем считать что синтаксические ошибки тоже тестируемы, я выше уже писал МСУ, иногда нужно чем-то жертвовать.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606000
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

1. чистой воды хардкод
2. Датаадаптер так и работает в принципе
3. когда я писал дженерик код через alter на коболе ты под стол пешком ходила
...
Рейтинг: 0 / 0
ORM vs sql
    #37606001
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchОтвет на ваш вопрос про поле по названию:

превосходно, но это же вставка чистого SQL без проверок в compile time :) не нужно себе противоречить, и раз уж допускаешь исключения, то допускай их везде, в том числе на самом высоком уровне — в подходе.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606002
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы я выше уже писал МСУ, иногда нужно чем-то жертвовать.
лучше МСУ
и другими кодерами
...
Рейтинг: 0 / 0
ORM vs sql
    #37606007
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelouchВ EF могу, генерация SQL не зависит от построения LINQ запроса.
и даже groupby можно куда угодно всунуть? ;)
...
Рейтинг: 0 / 0
ORM vs sql
    #37606008
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolYUtorЕсли у вас 20к запросов в секунду - то NHibernate не самая большая ваша проблема. :) Ни один сервер БД не выдержит такой нагрузки. Это один фиг распределённая система, никакой ACID там и в помине не будет.
да ладно, вот тут 11861435 ребята и 750k выжимали ;)
...
Рейтинг: 0 / 0
ORM vs sql
    #37606009
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosLelouch,

1. чистой воды хардкод
2. Датаадаптер так и работает в принципе
3. когда я писал дженерик код через alter на коболе ты под стол пешком ходила

Во-первых, я мужского пола - не "дружочек" или как вы там меня назвали я вам просто по причине того, что для начала мы не знакомы.
Во-вторых, удачи и дальнейшего удовольствия общения с чудо-платформой випрос, позволяющей строить только 2х-звенные решения только на WinForms. Интересно, а то что МС вот уже как лет 5 от их разработки отказалась вас не смутило?
В-третьих, приведите, наконец, пример работы с Вашими метаданными, чтобы мы пали ниц перед пример НЕ хардкода.)
...
Рейтинг: 0 / 0
ORM vs sql
    #37606016
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

1. аааа, извини, не въехал, дмуал раз не друг, то подруга (ну не враг же)
2. випрос тут не при чем, просто я пытаюсь сказать что КЛАСС в коде = ХАРДКОД проблемной области, что = Монументальная прога, мертворожденная и предлагаю конфигурировать класс(метаданные) вне кода, а в коде только интерпретировать.
3. счас я к удовльствию некоторых дома (я гастарбайтер в москоу, но живу в орле) и випрос тут принципиально не установлена
вот приеду где то в >20 числа и если не забудешь то покажу, как строятся метаданные, как генерируются персистентные и виртуальные типы, как интерпретируется и т.д.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606020
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыLelouchВ EF могу, генерация SQL не зависит от построения LINQ запроса.
и даже groupby можно куда угодно всунуть? ;)

После groupby доступен только ключ в дальнейших запросах) Но, да, можно.

Код: c#
1.
2.
3.
4.
5.
var query = from item in context.Table2Set
                        select item;
            var query2 = from i in query
                         group i by i.Name;
            query2 = query2.Where(i => i.Key == "2");
...
Рейтинг: 0 / 0
ORM vs sql
    #37606021
Enomay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мы кажется отвлеклись от сути.
давайте опишем проблему и её, так сказать, оптимальные решения.
поставим задачу и попытаемся её решить. а там посмотрим, что оптимальнее.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606022
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мс ни от чего не отказался
мс решает свои внутренные проблемы, то ей нужен что то типа линк, то дженерики ТОЛЬКО для коллекций, то ОРМ для М, то ТПЛ для ХНА и т.д.
и она всю эту побочную фигню пуляет в мсдн
а кодеры жрут
...
Рейтинг: 0 / 0
ORM vs sql
    #37606025
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зынет, упаси меня от olap и кубов.
Фигасе. А ну-ка расскажи, как ты по большим объемам отчеты снимаешь? По боевой базе? Или с большими объемами не работаешь?
зыкстати напиши мне без стороннего кода условие where с поиском по названию поля, переданному как аргумент, на linq
да ладно, можешь не писать, суть надеюсь понял. Задача стара как боян и существует с момента появления самого linq, и вроде как самой библиотекой она так и осталась нерешенной.
Что за детский сад, зы? DLINQ
...
Рейтинг: 0 / 0
ORM vs sql
    #37606031
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

про то и ратуем, но это не столбовая дорога мс, а просто пример
...
Рейтинг: 0 / 0
ORM vs sql
    #37606035
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enomayмы кажется отвлеклись от сути.
давайте опишем проблему и её, так сказать, оптимальные решения.
поставим задачу и попытаемся её решить. а там посмотрим, что оптимальнее.
проблема простая, я считаю, что вот это хардкод
и что никакой гарнитии нет,что это фиговина будет работать, хотя и прокомпилируется
Код: c#
1.
2.
3.
4.
5.
var query = from item in context.Table2Set
                        select item;
            var query2 = from i in query
                         group i by i.Name;
            query2 = query2.Where(i => i.Key == "2");
...
Рейтинг: 0 / 0
ORM vs sql
    #37606036
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosEnomayмы кажется отвлеклись от сути.
давайте опишем проблему и её, так сказать, оптимальные решения.
поставим задачу и попытаемся её решить. а там посмотрим, что оптимальнее.
проблема простая, я считаю, что вот это хардкод
и что никакой гарнитии нет,что это фиговина будет работать, хотя и прокомпилируется
Код: c#
1.
2.
3.
4.
5.
var query = from item in context.Table2Set
                        select item;
            var query2 = from i in query
                         group i by i.Name;
            query2 = query2.Where(i => i.Key == "2");



Поверьте, я проверил. Будет.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606038
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch,

пусть и он проверит :)
неужто не доходит простая мысль?
...
Рейтинг: 0 / 0
ORM vs sql
    #37606040
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зайди в БД и замени key на GUID
и попробуй запусти еще раз компиляцию? есть ошибки?
теперь запусти
есть ошибки?
...
Рейтинг: 0 / 0
ORM vs sql
    #37606043
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosзайди в БД и замени key на GUID
и попробуй запусти еще раз компиляцию? есть ошибки?
теперь запусти
есть ошибки?

1. Если обновить модель то будет ошибка) а L2S по-моему даже вылетит на создании контекста.
2. Key это поле после group by, его нет в таблице если что.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606044
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыда ладно, вот тут 11861435 ребята и 750k выжимали

Хм. Они конечно пошли дальше... Они отказались от SQL и много чего еще...
...
Рейтинг: 0 / 0
ORM vs sql
    #37606046
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыбольшинство проектов, о которых я знаю, либо никогда не меняли базу, либо делали это исключительно ради оптимизации (например, переход с sql на nosql).
Речь не о "случайном" изменении базы, а о подобной возможности. Я учавствовал в проектах, в которых заложена поддержка различных БД (Oracle, MS SQL). И это круто. Как будешь решать такую задачу, дублировать дата-слой под каждую БД?

зыНельзя тупо поменять базу, ничего не поменять в коде и получить +500% в скорости.
Можно. И скорость тут не причем.

зыТак что ИМХО смена базы — проблема и, соответственно, выгода, сильно надуманы.
Это реальность, зы, с которой ты просто не сталкивался.

зыДа, ты сейчас скажешь что ORM позволит оставить бОльшую часть кода как есть, но тот же переход sql->nosql требует заодно и смены подхода к работе с данными.
И это тоже. SQL vs NOSQL - разные подходы, сомневаюсь, что такой переход возможен. Давай возьмем лучше Oracle и MSSQL, самые распространенные корпоративные сервера. Переход безболезненный. Без ORM это практически невозможно.

зыА количество кода, которое необходимо будет переписать, зависит не от факта использования ORM, а от наличия первоначальной абстракции DAL и BL.
Абстракция изначально заложена в движок ORM. Наличие провайдера даст возможность генерировать "свой" SQL. Вот и вся абстракция. По кол-ву таких абстракций (кол-во поддерживаемых СУБД) хибер - лидер.

зыВ хибере очень много всего, что нужно настроить, чтобы заработало. Более высокий порог вхождения.
Та я тебя умоляю, проще пареной репы :) Посложнее, конечно, чем L2S, но не до базрассудства.

зыА если внезапно начнет глючить в неумелых руках, то ошибки можно искать долго и упорно.
Зы, не аргумент. Неумелым рукам и мороженое противопоказано, подавится и умрет.

зыОсобенно коварны транзакции и кэш. В некоторых случаях кэш вообще нафиг не нужен, а он есть.
Зы, ну вот что ты фантазируешь, а? ;)

зыА если несколько серверов — появляется ещё и проблема репликации кэша.
Ты имеешь ввиду, если несколько нод в кластере. Так вот пишется либо свой балансировщик, либо вынос кеша на слой БД. Второе проще. Это как встроенная возможность хранения ASP.NET сессии в БД для такой кластерной архитектуры. Ничего сложного.

зыЯ не говорю что это отмазки ламеров чтобы не использовать. Пожалуйста, если это все нужно и умеешь работать. Но если нет — то хибер крайне избыточен и потери CPU внутри на все перделки при большой нагрузке становятся сильно заметны.
Если не умеешь водить - не садись, мне не нравятся такие аргументы. Хибер не сложен, верь мне.

зыНапример, мне нужно делать выборки актуальных данных по вроде бы простым динамическим критериям. Нужно делать очень быстро, много и на большом объеме данных. Хибер не в состоянии это закэшировать, просто нет таких алгоритмов. Он хорошо справляется с поиском по ключу, но сложнее — проходит мимо. Лучше взять инструмент проще и эффективнее, например mybatis, и получить то, что мне нужно, сразу и без танцев.
На больших наборах только OLAP поможет. Для поиска - полнотекст. Другого не дано. Какие размеры для тебя большие?
Для меня - несколько терабайт (разумеется, никаких блобов).

зыНу ты уж определись, тебе чтобы код быстрее писать, или чтобы написанный код быстрее работал. Иногда приходится чем-то жертвовать.
В том-то и дело, что то и другое.
...
Рейтинг: 0 / 0
ORM vs sql
    #37606050
Enomay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ViPRosмс ни от чего не отказался
мс решает свои внутренные проблемы, то ей нужен что то типа линк, то дженерики ТОЛЬКО для коллекций, то ОРМ для М, то ТПЛ для ХНА и т.д.
и она всю эту побочную фигню пуляет в мсдн
а кодеры жрут

ты для чего эту бессмысленную фигню тут написал?
...
Рейтинг: 0 / 0
ORM vs sql
    #37606052
Enomay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ViPRosLelouch,

пусть и он проверит :)
неужто не доходит простая мысль?

какая мысль? обычный составной запрос.
...
Рейтинг: 0 / 0
25 сообщений из 451, страница 12 из 19
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ORM vs sql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]