powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Организация запросов из десктопного клиента к субд
25 сообщений из 248, страница 7 из 10
Организация запросов из десктопного клиента к субд
    #38057247
thunder2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей КМСУИспользовать ORM.LINQ2SQL!
А почему не EntityFramework ?
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057301
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanАлексей К,

все равно не согласен, медленнее будет полюбому, даже пусть 5 секунд против 2. Тут я делаю один запрос и получаю быстро то что надо. а тут надо будет делать 1000, а если у меня 1000 таких в секунду что получаем? Вообщем вывод - то какой- orm не на все способен.Пусть оно будет чуть медленнее, зато на сервер БД нагрузка более равномерная при многопользовательской работе. Транзакции получаются короче. Пока данные гоняются по сети СУБД "отдыхает" и готова принимать запросы от других пользователей. Поэтому я и говорю "медленно но верно".

netivanДумаю на этом надо завершить дискуссию.Ваше право. :-)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057302
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Алексей Кпропущено...
Вы что-то путаете. Мы с МСУ никогда не ругались. Все наши с ним дискуссии всегда были в рамках приличия.
Прошу прощения. Они с SeVa ругаются Принято. :-)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057303
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2MasterZivпропущено...


Это сильно зависит от СУБД.
Подготовленные запросы также во многих СУБД откомпилированы.
Планы некоторые СУБД кэшируют и для простых запросов, а не только для процедур.
Не все запросы простые.От "простоты" запроса не зависит, будет он кэшироваться или нет.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057305
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2MasterZivпропущено...


Ну, это ты не прав. Просто не прав.
Может что-то ещё бы привёл в виде примера -- я бы согласился.
Но не транзакции.
Допустим мы открываем транзакцию на клиенте из двух запросов.
В промежутке между ними отвалилась сеть.
Первый запрос заблокировал какие-то ресурсы. (я знаю про версионники! Но и в этом случае незавершенная транзакция ни к чему хорошему не ведет)
Они, конечно, не будут заблокированы вечно. СУБД через разумный промежуток времени откатит эту "зависшую" транзакцию и снимет блокировки. Однако это все таки будет промежуток времени.
Транзакция с сервера будет выполнена даже если клиент умрет страшной смертью Повторюсь . Между СП и БД хороший канал связи. Disconnected-режим работы с БД практически исключает такие случаи. Проблема надумана.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057309
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Но даже если и знают, то не смогут сделать ничего того, что не позволдяют сделать хранимки. Повторюсь. Система безопасности не ограничивает управление транзакциями.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057311
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
thunder2Алексей Кпропущено...
LINQ2SQL!
А почему не EntityFramework ?Имелись ввиду все LINQ-ORM.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057406
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Получить может. Соединится не может.
Как это не может, если сиквел соединение у тебя работает в контексте виндовой аутентификации?

Cat2Никакого доступа из Excelя не получится, если доступ дается не через разрешения на иаблицы, а через разрешения на ХП.
Всё, что связано с БД - через хранимые процедуры? Проще убить себя об стену, чем писать даже самые тривиальные вещи на хп. В топку такую архитектуру. Во-вторых, как было уже сказано, транзакции вне безопасности, поэтому никто не запрещает пользователю начать транзакцию и уйти курить бабмбук. В-третьих, какого вообще ляда пользователю даже видеть, что там оно в базе? Хранилище должно хоститься в отдельной песочнице, не доступной для кого-то нибыло, не говоря уже про всех пользователей домена (системы).

Cat2Разумеется, если используется ОРМ, то кому-то будут даны прямые права на таблицы и можно будет, при известных знаниях, лазать к базе чем угодно.
Глупости. ORM так же отлично работает с хранимыми процедурами.

Cat2При использовании хранимых процедур пользователи не знают их названий и не знают их параметров.
Им вообще ничего нельзя знать.

Cat2Но даже если и знают, то не смогут сделать ничего того, что не позволдяют сделать хранимки.
Открыть и оставить транзакцию? Еще раз, пользователям нечего делать в базе. Даже если они будут играть по правилам хранимок и лазить через них к данным, ни к чему хорошему это не приведет. Всегда найдется узкое место, в котором хранимка отдает один результат (расширенный функционал), а ПО другой (урезанный функционал). Всё это накладывает очень сложный и порой практически не поддерживаемый опционал в разрезе администрирования системы. Зачем и кому нужны эти проблемы? Не проще ли закрыться от всего внешнего зла средним слоем (WCF, ASMX) и жить спокойно? Это удобно и для других систем из других баз и SQL серверов - все мы знаем о зле, таящимся в слове "линкед сервер". Будешь шарить сервер для того, чтобы твои хп заюзали другие системы? В случае же SOA подхода - никаких линкедов, весь софт общается с хранилищем через единый документированный шлюз - потребители могут быть кто угодно, начиная от codemonkey-поделок, кончая всякими 1С, аксаптами, сапами, CRM, ECM, ERP и иже системами.

Cat2Ты как-то писал про "тупые хранилища". Приходится напомнить, что эти хранилища не тупые. Их можно тупо использовать и превратить в "тупые хранилища".
Хранилище должно быть тупым, средний слой (SOA) должен быть умным. Только так ты получишь распределение.

Cat2Настоящая правильно спроектированная база сама должна поддерживать целостность и непротиворечивость, огранирчения которой нельзя обойти никаким способом. Ну, разумеется, кроме снятия ограничений администратором.
Целостность и непротиворечивость хранилища делай на базовом уровне (связи, ключи). А бизнес-логику, интеграционный слой, распределение и т.п. - вне базы.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057409
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Кthunder2пропущено...
А почему не EntityFramework ?Имелись ввиду все LINQ-ORM.
Что такое LINQ-ORM? :) EF, L2S, NH - это тоже всё LINQ-ORM.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057426
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей Кпропущено...
Имелись ввиду все LINQ-ORM.
Что такое LINQ-ORM? :) EF, L2S, NH - это тоже всё LINQ-ORM.Все ОРМ, поддерживающие трансляцию Expression Tree => SQL.

Какая теперь разница... :-)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057500
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КВсе ОРМ, поддерживающие трансляцию Expression Tree => SQL
ORM с трансляцией вида [гавномаппинги] => [SQL] идут на помойку?
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057507
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КВсе ОРМ, поддерживающие трансляцию Expression Tree => SQL
ORM с трансляцией вида [гавномаппинги] => [SQL] идут на помойку? Да. Их эра закончилась.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057603
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КnetivanАлексей К,

все равно не согласен, медленнее будет полюбому, даже пусть 5 секунд против 2. Тут я делаю один запрос и получаю быстро то что надо. а тут надо будет делать 1000, а если у меня 1000 таких в секунду что получаем? Вообщем вывод - то какой- orm не на все способен.Пусть оно будет чуть медленнее, зато на сервер БД нагрузка более равномерная при многопользовательской работе. Транзакции получаются короче. Пока данные гоняются по сети СУБД "отдыхает" и готова принимать запросы от других пользователей. Поэтому я и говорю "медленно но верно".

netivanДумаю на этом надо завершить дискуссию.Ваше право. :-)
Погодите, давайте разебремся. База в любом случае многопользовательская и она выполнит параллельно сколько надо запросов. Можно сказать,что в процедуре пакетный запрос, а вы предлагаете разбить его на Х маленьких. Не совсем все же понял логику)
ЗЫ Кстати спасибо вам за мысль про EF 4.2, и правда хорошая штука)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057652
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КДа. Их эра закончилась.
То есть хиберовские hbm-маппинги, HSQL и ICriteria идут прямиком на свалку? Куясе.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057680
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanМожно сказать,что в процедуре пакетный запрос, а вы предлагаете разбить его на Х маленьких.Да. Только это всего-лиш один из возможных вариантов. Не надо это воспринимать как наиболее правильное решение. :-)

netivanЗЫ Кстати спасибо вам за мысль про EF 4.2, и правда хорошая штука)Всегда пожалуйста. :-)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057690
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КДа. Их эра закончилась.
То есть хиберовские hbm-маппинги, HSQL и ICriteria идут прямиком на свалку?Да.
МСУКуясе.Всё когда-то заканчивается.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057714
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

да я все к тому,что EF далеко не на все способен) Вот кстати интересно хинты в нем можно ставить?:)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057761
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

вы кстати не пробовали Ef 5 вашим способом вздрючить?)
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057766
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanВот кстати интересно хинты в нем можно ставить?Традиционно, через вьюху.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057772
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netivanАлексей К,

вы кстати не пробовали Ef 5 вашим способом вздрючить?)Пробовал, не получилось

Он какой-то метод из класса Environment использует, который есть в 4.5 и которого нет в 4.0. Решил ждать следующей версии EF. Он теперь опенсорсный, что не может не радовать.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057810
netivan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

он еще помойму DataXXX что-то использует. Вообщем ждем следующей, согласен ) Вопрос когда она будет
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057885
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КМСУТо есть хиберовские hbm-маппинги, HSQL и ICriteria идут прямиком на свалку?Да
Это ещё SolYUtor не слышит, а то палкой бы побил ща такое беспощадие к hbm

P.S. Linq/Lambda/ExpressionTree-ориентированные мапы не панацея, отче. Какая по сути разница, какая обёртка в ORM, главное что-бы удобно было.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38057922
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУP.S. Linq/Lambda/ExpressionTree-ориентированные мапы не панацеяЭто большой шаг вперёд.
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38058006
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

ОРМ в моем понимание весч простая такая -
я работаю со своими объектами и нифига не знаю о БД

но с ваших слов, это не так - надо знать какие то хранимки, вьюхи, сте (слово то какое) и т.д.
и притом в каких то случаях надо не объектами своими работать, а с их суррогатами (трекинг твой как раз управляет этим как я понял),
нектороые объекты как бы и не объекты вовсе (табличка в памяти у НЕТИВАНа) и т.д.
потому грю что - ерунда это,токо время отнимает

2 Алексею
ОРМ нужен был ток для того, чтоб прогер не думал о синхронизации состояний объектов в памяти и в БД (а это в основном целосностное изменение-запись - удаление), с селект мало у кого проблемы были, а вот с остальным (особенно в БД с наворочеными ОЦ) были, до сих пор мало кто разумеет что исть транзакшн и т.д.
но ваши ОРМ неспособные все это делать прозрачно, они просто вызывают ваши ХП (как будьто без них низзя было их вызывать)

понятно грю?
...
Рейтинг: 0 / 0
Организация запросов из десктопного клиента к субд
    #38058012
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня и к Объектам (ООП) тоже немало претензийи и к РМД, если б они были нормальные, то и проблемы бы с маппингом не появлялись
...
Рейтинг: 0 / 0
25 сообщений из 248, страница 7 из 10
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Организация запросов из десктопного клиента к субд
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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