Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5 6 7 8 9 10 .. 17   вперед  Ctrl
 RE:А зачем нужен этот монстр....... MS SQL?  [new]
Alexander Chepack
Guest
Просто хочется понять для решения каких именно задачь скорость работы через ADO становится неудовлетворительной?
-------------------------------------

Присоединяюсь к вопросу.

Кроме этого - no offence meant - мой личный опыт говорит, что если кто-то хочет залезть в SQL Server на уровне движка ) - то в 99% случаев, этому кому-то просто нечего делать - если человек занят реальным делом, этого почему-то не требуется...
24 июл 01, 11:57    [32115]     Ответить | Цитировать Сообщить модератору
 RE:А зачем нужен этот монстр....... MS SQL?  [new]
alexeyvg
Guest
Я не говорю что скорость работы становится неудовлетворительной, я говорю, что она будет меньше.
Вообще выбор средства доступа - задача сложная...

Могу поделиться своим опытом.

Проекты, использующие Data-Bound компоненты всегда остаются самописками - они не живут сколько-то приличное время, работают в присутствии разработчиков, не тиражируются и т.д. На этом можно сделать отчёт для начальника, но не больше.
Проекты, использующие компоненты типа АДО ВНУТРИ текста (т.е. стиль MyVar = RS( "MyField" ) ) - то-же самое.
Во ВСЕХ реально работающих проектах, которые я знаю, работа с БД организована через своё API. При этом в модулях, его реализующих, может использоваться и, к примеру, АДО, а может и native API.
Во ВСЕХ продающихся западных системах, которые я знаю, работа с БД организована через своё API, в свою очередь реализованное через native API.

Кстати в использовании native API ничего страшного нет. Я его неоднократно использовал в проектах. Если стоимость проекта 20-50 чел/мес, то выделить 1-3 ч/м для написания этого доступа - это не сложно.

И главное преимущество в использовании native API - это не скорость, а стабильность работы. Например, установка браузера или сервис-пака или ещё чего-то вносит изменение в поведение
ADO, что для большой программы становиться критичным.
24 июл 01, 13:46    [32116]     Ответить | Цитировать Сообщить модератору
 RE:А зачем нужен этот монстр....... MS SQL?  [new]
olden
Guest
начиная с 7-й версии с MS SQLServer стало возможным работать. Однако мне кажется: если хочется использовать Oracle - трижды подумай, может MS SQLServer больше подойдет, а если и правда подойдет, то подумай еще, может и InterBase справится. Большие системы не всегда самые мощные и быстрые. Есть у MS SQLServer один ааагромный недостаток - привязка только к виндам. А в наше время это минус, минус и еще раз минус
Насчет ADO. Попробовал тут как-то в Delphi через OLE DB for ODBC с DBF-файлом связаться (где-то тысяч сто записе при десятке полей) так он мне всю душу вымотал пока в гридину данные загрузил. А вот через делфовский BDE моментально данные выгреблись Насчет MySQL. Лучше возьмите InterBase под Linux. И у вас будет полноценная СУБД. Кстати, как правило, верить компаниям-разработчикам нельзя. Там в NASA куча подразделений. Может кто-то и начал возиться с MySQL, а разработчики сразу рекламу толкают мол "мы - уже и в NASA" Это общая болячка такая
24 июл 01, 15:09    [32117]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
The Lex
Member

Откуда: Kiev, Ukraine
Сообщений: 11
Alex Fogol wrote:
"Кстати, насколько я знаю, и с SQL Server можно работать почти напрямую, вплоть до того, что вклиниваться в его движок. Разве нет?"

Интересно, и что конкретно я имел в виду? :)

Если уж зашел вопрос о том, чем пользоваться, то тут мое мнение примерно таково:

- разработки на C: ODBC
- разработки на C++: ODBC или OLE DB, но можно и ADO.
- разработки на VB: ADO.

ADO - посто очаровашка под VB. OLE DB и ADO очень трудно будет использовать из C, так как... ну не для него они писаны. Под C++ все прекрасно заворачивается в классы и шаблоны и легко используется. Но по-моему ADO в этом случае выглядит несколько более громоздко, по-сравнению с OLE DB. Кстати, OLE DB по сравнению с ODBC иногда тоже.

По функциональности:
ADO позволяет все (или все же почти все), что позволяет OLE DB, и добавляет к этому много чего своего. И это понятно: ADO - "интеллектуарная" обертка для OLE DB. Судя по всему OLE DB позволяет больше, чем ODBC. Если сравнивать ODBC-драйвер и OLE DB Provider для MS SQL Server. Впрочем, это касается не только MS SQL.

По скорости:
ADO в принципе медленнее всех. Но... Разве это так важно? По-моему важно еще и то, что есть ADO.NET и за ним будущее. По крайней мере на платформе .NET. Сравнивать OLE DB и ODBC не возьмусь. Уж больно принципы разные: ODBC - это "чистый API", OLE DB - это COM.

Через OLE DB можно работать с любым драйвером ODBC. По-моему, при этом теряется как в скорости, так и в функциональности.

Что касается доступа к БД "через свой API" - не знаю, никогда не пробовал и пробовать не собираюсь.

Ну и насчет "монстровидности" MS SQL: сам с большим удовольствием использую MS Access в качестве хранилища данных с некоторыми замашками на БД. Как только там становится больше БД, чем просто места для складывания данных, так сразу же стоит уходить на сервер БД. По-моему все ж лучше на MS SQL Server - он ближе будет, под Windows прекрасно становится, имеет обширное число вариаций, хорошо документирован, имеет бесплатный вариант. Единственное, из-за чего перешел бы на другой - это если б "жизнь заставила": требования заказчика, т.е.

Таково мое скромное мнение. Но что все таки я имел в виду в том своем постинге?! :)
27 сен 02, 23:11    [58686]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Silver
Member

Откуда:
Сообщений: 141
Дожились! Или дожили! :)
Вот уже отдельный личности стали MS SQL сервер величать "монстром". Ранее сего почетного отличия удостоены были системы не ниже DB2 или ORACLE.
Того и гляди, начнутся призывы всем перейти на MySQL и вообще пора вернуться на деревья. В смысле на иерархические СУБД. :)

Особенно порадовала "свежая" идея об исключении всяческой логики из базы. Явно человек из крупной бюджетной конторы, где для улучшения работы системы принимается всегда одно "верное" решение -- сменить железо.

Ну и к вопросу о замедлении работы системы ХП и тригеррами: ускорение работы при отказе от тригерров может произойти только в том случае, когда вы откажетесь от функциональной логики в них заключенной. Если вы эту же логику перенесете на клиента, пройзойдет только замедление системы. Даже в случае 1 сервер - 1 клиент.
28 сен 02, 11:26    [58706]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
khl
Guest
//лучше на MS SQL Server - он ближе будет, под Windows прекрасно становится, имеет обширное число вариаций, хорошо документирован, имеет бесплатный вариант.//

Что за вариант - который бесплатный?
19 окт 02, 22:27    [66493]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Lexis
Member

Откуда: Moscow
Сообщений: 1737
бесплатный - это видимо evaluation copy на 120 дней
20 окт 02, 12:41    [66529]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Thorr
Guest
Нет, бесплатный - это который MSDE.
21 ноя 02, 01:37    [79495]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
f_w_p
Guest
"Нет, бесплатный - это который MSDE."
Уж больно много в нем ограничений!
21 ноя 02, 08:15    [79522]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
akalend
Member

Откуда: СПб
Сообщений: 522
Kalin Saten
Кстати, новость (была для меня)..... NASA с Oracle перешла на MySQL...


NASA switches from Oracle to MySQL

NASA switches from Oracle to MySQL NASA switches from Oracle to MySQL 4 January 2001 In November a team at NASA's Marshall Space Flight Center finished the transition of the NASA Acquisition Internet Service (NAIS) from Oracle to MySQL. NAIS sends e-mail notifications to users based on specified interests and enables users to query the Web site (nais.nasa.gov) for updated opportunities. Dwight Clark, project leader of NAIS, claims to have noticed an increase in speed of
http://www.mysql.com/news-and-events/news/article_51.html

NASA

а вообще-то человек прав со своей плоскости зрения,

но есть много НО:

если клиент и сервер БД в разных сетках, то для обработки тащится весь ДатаСет, что ни есть хорошо

второе NASA пересело на коммерческую версию MySQL, в которой так же есть хранимые процедуры и функции...

в моей конторе был такой казус - на уровне юмора из жизни:
подрядчик не имел лицензии на Оракл и поэтому решил все делать на Майкрософт Сервер, а потом все переписать на Оракл.

К тому моменту, когда он купил лицензию, им было написано 4 тыс хранимых процедур. Естественно, они оказались непереносимы.

В итоге - нам пришлось покупать лицензию на Майкрософт сервер...
Вот такие пироги.
21 сен 04, 18:11    [976593]     Ответить | Цитировать Сообщить модератору
 А MS SQL - вовсе и не монстр  [new]
akalend
Member

Откуда: СПб
Сообщений: 522
"Кстати, насколько я знаю, и с SQL Server можно работать почти напрямую, вплоть до того, что вклиниваться в его движок. Разве нет?"
SQL Server идеальное решение для небольших крапоративных систем,
или больших, но с небольшими базами, или с не распределенными базами...

А еще он хорош тем, что есть много пиратских версий и его можно изучать нам - разработчикам в "лабораторных условиях".

Оракл - он потежелее и его изучать дома - потруднее....

Вот так ....
28 сен 04, 12:25    [992488]     Ответить | Цитировать Сообщить модератору
 Re: А MS SQL - вовсе и не монстр  [new]
Диченка
Member

Откуда: ИТ-Олимп, 58.1-летний супермен
Сообщений: 3989
akalend
"Кстати, насколько я знаю, и с SQL Server можно работать почти напрямую, вплоть до того, что вклиниваться в его движок. Разве нет?"
SQL Server идеальное решение для небольших крапоративных систем,
или больших, но с небольшими базами, или с не распределенными базами...

А еще он хорош тем, что есть много пиратских версий и его можно изучать нам - разработчикам в "лабораторных условиях".

Оракл - он потежелее и его изучать дома - потруднее....

Вот так ....


Сказал как в лужу пернул...
Что в твоем понимании "большая база" ? Много ты написал "больших баз" на MSSQL ?
28 сен 04, 15:15    [993406]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Достали
Guest
NASA с Oracle перешла на MySQL...


Как-же достали уже этой байкой... Перевели сервис рассылки емейлов на MySQL а кричат как будто вся NASA перешла на MySQL.
Так-же у людей фобия может развиться - "боязнь падения космического корабля на голову".

Маркетологи MySQL явно на лохов работают: когда у них транзакций не было - они писали это в графе "преимущества MySQL", тоже самое касается всего что у них небыло, но появилось.

P.S. CACHE кстати тоже добивает своими success story про СпидиГонсалеса из Аргентины, который какую-то поделку с Оракла в CACHE переделал и у него в 3 раза быстрее летать стало.
28 сен 04, 16:27    [993774]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Достали
Guest
akalend

SQL Server идеальное решение для небольших крапоративных систем,
или больших, но с небольшими базами, или с не распределенными базами...

А еще он хорош тем, что есть много пиратских версий и его можно изучать нам - разработчикам в "лабораторных условиях".

Оракл - он потежелее и его изучать дома - потруднее....


Дык для изучения Оракл БЕСПЛАТЕН. Даже не нужны "пиратские версии".
28 сен 04, 16:35    [993812]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Petr Chulkov
Member

Откуда: Донецк
Сообщений: 540
Достали


Дык для изучения Оракл БЕСПЛАТЕН. Даже не нужны "пиратские версии".


а кто мешает скачать тот же MSDE с сайта фирмы-производителя и тоже бесплатно его изучать ?

только вот не надо за ограничения -- с такими ограничениями он успешно может не только для изучения подойти, но и для небольших контор (там разрешено 5 одновременно выполняющихся запросов - иногда даже это много)
29 сен 04, 10:18    [995089]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Denis A.
Member

Откуда: Челябинск
Сообщений: 353
автор
Насчет ADO. Попробовал тут как-то в Delphi через OLE DB for ODBC с DBF-файлом связаться (где-то тысяч сто записе при десятке полей) так он мне всю душу вымотал пока в гридину данные загрузил. А вот через делфовский BDE моментально данные выгреблись


ты не читал документацию. Это общая болезнь юнцов, которые читают форумы и на основании этого делают какие-то выводы. Перед использованием системы стоит прочитать хотя бы об общих принципах работы с ней.
30 сен 04, 11:21    [999109]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
alex_k
Member

Откуда: krasnoyarsk
Сообщений: 6694
дырявый оракл?
30 сен 04, 12:54    [999530]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Pi
Member

Откуда:
Сообщений: 278
знаю, что отвечаю на древний пост, но решил осмыслить для себя (или чтобы поправили):

Триггеры создавались не для того, чтобы ускорить работу с базой данных.
Они должны были обеспечить
- независимость логики данных от логики приложений, в том числе приложений чужих и устаревших
- обеспечить централизованное управление логикой данных - вне зваисимости от количества существующих приложений

А что еще?
1 окт 04, 20:11    [1003458]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
Pi
Member

Откуда:
Сообщений: 278
Достали
akalend

SQL Server идеальное решение для небольших крапоративных систем,
или больших, но с небольшими базами, или с не распределенными базами...

А еще он хорош тем, что есть много пиратских версий и его можно изучать нам - разработчикам в "лабораторных условиях".

Оракл - он потежелее и его изучать дома - потруднее....


Дык для изучения Оракл БЕСПЛАТЕН. Даже не нужны "пиратские версии".


По поводу SQL Server - это было верно для версий 6.5 и ниже.
Сегодня это уже неверно.

Водораздел проходит не по размеру базы данных, а по функциональности приложений. И по режиму работы с данными. SQL Server 2000 - по-прежнему блокировщик...
1 окт 04, 20:14    [1003459]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709
Pi

Триггеры создавались ... обеспечить
- независимость логики данных от логики приложений, в том числе приложений чужих и устаревших
- обеспечить централизованное управление логикой данных - вне зваисимости от количества существующих приложений


Нет. Вообще триггера появились в СУБД для реализации ссылочной целостности и реализации примитивной бизнес-логики.
Хотя я бы сказал, что для реализации последнего они в принципе не подходят.
С появлением хранимых процедур и декларативной ссылочной целостности триггера должны сдохнуть как класс.
4 окт 04, 11:02    [1005445]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
MasterZiv
Нет. Вообще триггера появились в СУБД для реализации ссылочной целостности и реализации примитивной бизнес-логики.
Хотя я бы сказал, что для реализации последнего они в принципе не подходят.
С появлением хранимых процедур и декларативной ссылочной целостности триггера должны сдохнуть как класс.

Ну уж нет. С чего им спрашивается дохнуть ? Ну ка проконтролируйте в бизнес-логике через ХП запрет на удаление задними числами "CreateDate < @@CalcDate", где клиентское приложение делает "DELETE FROM Table WHERE ...". Или Вы считаете, что оно должно открывать курсорчик и по записи лопатить и удалять ? В плане контролирования бизнес-логики в операциях с множествами триггера самое удобное для этого места (особенно если в СУБД есть поддержка BEFORE/AFTER FOR ROW/STATEMENT).
4 окт 04, 11:34    [1005562]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
ACRUS

С чего им спрашивается дохнуть ? Ну ка проконтролируйте в бизнес-логике через ХП запрет на удаление задними числами "CreateDate < @@CalcDate", где клиентское приложение делает "DELETE FROM Table WHERE ...". Или Вы считаете, что оно должно открывать курсорчик и по записи лопатить и удалять ? В плане контролирования бизнес-логики в операциях с множествами триггера самое удобное для этого места (особенно если в СУБД есть поддержка BEFORE/AFTER FOR ROW/STATEMENT).


Клиентское приложение не должно полагать, что оно имеет право выдумывать свои собственные операции по работе с данными. Если требуется удалить строки с какими-то опциями, то почему бы не написать процедуру сп_Удалить_Кучу_Записей, с параметрами? В процедуре проверка. И вуаля! Всё просто, быстро и понятно. И переносимо, если процедуры через ODBC {call ...} вызываются.
4 окт 04, 21:47    [1007882]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
MasterZiv

Нет. Вообще триггера появились в СУБД для реализации ссылочной целостности и реализации примитивной бизнес-логики.
Хотя я бы сказал, что для реализации последнего они в принципе не подходят.
С появлением хранимых процедур и декларативной ссылочной целостности триггера должны сдохнуть как класс.

Все-таки, скрее всего, триггеры появились для реализации пользовательских ограничений целостности, т.е. тех, которые не могут быть реализованы декларативно в данной версии СУБД. Но главное, триггеры - это ХП процедуры, которые вызываются в ответ на события, связанные с изменением состояния БД. Кроме изменения данных, логон, закрытие, DDL. Поэтому они могут быть использованы для пользовательского аудита, для извещений об изменении состояния БД (например, что появились критические данные), для создания пользовательских репликаций и проч. В общем отказываться от них вряд ли стоит: механизм вызова процедур в ответ на события всегда имеет значение.
5 окт 04, 00:59    [1007951]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
1024
Member

Откуда: Нижний Новгород
Сообщений: 14267
другими словами:

триггер - это что-то вроде событий в не-скл. Срабатывают независимо от того хочет этого клиент или нет.
Процедура вызывается по желанию клиента.

В этом отличие.
5 окт 04, 09:18    [1008173]     Ответить | Цитировать Сообщить модератору
 Re: А зачем нужен этот монстр....... MS SQL?  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
1024

другими словами:

триггер - это что-то вроде событий в не-скл. Срабатывают независимо от того хочет этого клиент или нет.
Процедура вызывается по желанию клиента.

В этом отличие.

Как посмотреть. Процедуры вообще обыкновенно срабатывают независимо от желания клиента, так он часто не желает про них ничего знать. Впрочем, их можно отключить в том числе и клиенту. С другой стороны, некоторые процедуры вызываются в том числе или только из тела триггера. Как написать. Главное, чтобы у разработчика была такая возможность в зависимости от его желаний.
5 окт 04, 09:43    [1008251]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5 6 7 8 9 10 .. 17   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить