Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Сравнение MSSQL и Ibase  [new]
ENN
Member

Откуда: УФА
Сообщений: 212
Прочитал статью сравнение IBase и MsSql(SyBase)
Сложилось хорошее впечатление о IBase

Но Хотелось бы найти сравнение (статью) MSSQL c IBASE
и неаписал бы ее поклонник MS

Сам работаю на IBase( FB )
Пока все нравиться
3 янв 04, 09:10    [480319]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
Не об этой статье речь?
http://www.ibase.ru/mssql7.htm
Старенькая она :) На мой взгляд, сравнивать тут нечего, в отличие от MSSQL IB последние 8-10 лет практически не развивался, и MSSQL сейчас превосходит его практически по всем параметрам (но далеко не по всем )
5 янв 04, 10:56    [481010]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
Я тоже раньше читал эту статью. И впечатление тоже такое же сложилось. Пока не поработал на том и на том. Нечего и сравнивать - MS SQL в разы лучше

-- Tygra's --
5 янв 04, 15:12    [481376]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
Ну не в разы, не надо :) Это же смотря на какие параметры смотреть...
Firebird сейчас явно превосходит MSSQL, думаю, по следующим параметрам:
- соотношение производительность/цена (гыыы)
- количество поддерживаемых платформ (sic!)
- низкая требовательность к аппаратному обеспечению
- низкая требовательность к квалификации администратора. В принципе, хорошо отлаженная база поддержки не требует, а в случае форс-мажора вполне справится обычный админ.
MSSQL превосходит в следующем:
- более высокая производительность (раза в полтора-два)
- наличие гетерогенных запросов
- встраивание в операционную систему
- поддержка XML вроде есть, а также общение с веб-сервером
- встроенные средства репликации (у Firebird - отдельно)
Что там еще?
И не надо говорить, что MSSQL 2000 юзверей потянет, это полностью его право. А вот если посчитать стоимость решения при 20-50 пользователях (ну 200), и базе 10-50Гб, то я все же склоняюсь к решениям на Firebird :)
5 янв 04, 16:26    [481528]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
alex_k
Member

Откуда: krasnoyarsk
Сообщений: 6694

- встраивание в операционную систему
- поддержка XML вроде есть, а также общение с веб-сервером
- встроенные средства репликации (у Firebird - отдельно)


первое непонятно.
второе имхо к серверу бд имеет мало отношения
с третьим не согласен
5 янв 04, 16:41    [481565]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
автор
А вот если посчитать стоимость решения при 20-50 пользователях (ну 200), и базе 10-50Гб, то я все же склоняюсь к решениям на Firebird :)


И далеко ли он утянет, бесплатный FB?
Это все-равно, что купить четыре колеса вместо машины и говорить, что это самое дешовое решение. Правда ездит с горы, и то не всегда :)

-- Tygra's --
5 янв 04, 18:58    [481773]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
f_w_p
Guest
Это все-равно, что купить четыре колеса вместо машины и говорить, что это самое дешовое решение. Правда ездит с горы, и то не всегда :)
Нет, это все равно, что купить ролс-ройс и ездить на нем на рыбалку.
Это для Windows платформы. Но есть еще задачи, требующие Unix. А там паре (IB,Oracle) честно говоря альтернатив мало. Ну м.б. еще Postgress.
Еще у меня сложилось впечатление, что Tygra перешел с IB5 на MSSQL2000. Но ведь сейчас уже есть FB1.5 и IB7. После слияния Yaffil и FireBird можно ожидать много приятного в FB2.0
Теперь добавлю свои пять копеек в сравнение.
-Переход с версии на версию сервера для FB несравнимо проще.
-В MSSQL2000 очень неплохой оптимизатор запросов. В FB можно сказать, что он никакой. Поэтому приходится поработать ручками. Но после этого разница в производительности не такая уж значительная. Кстати, меня убила разница в производительности между MSSQL6.5 и MSSQL2000.
-Закачка больших объемов данных в FB быстрее. Только не надо про BULK INSERT. Это все ж снижение надежности!
-В MSSQL отсутствуют UDF.
-В MSSQL можно в одном запросе обратиться к нескольким БД, а в FB нельзя:-(
-MSSQL требует соответствующей ОС на компьютере. А FB работает практически на любой Windows. Поэтому его удобно использовать для локальных задач. Правда говорят, что есть MSDE:-)
6 янв 04, 09:03    [482035]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
-В MSSQL присутствуют UDF.
6 янв 04, 09:28    [482053]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
funikovyuri
Member

Откуда: Симферополь
Сообщений: 4045
Это для Windows платформы. Но есть еще задачи, требующие Unix. А там паре (IB,Oracle) честно говоря альтернатив мало. Ну м.б. еще Postgress.

Вообще-то большинство СУБД как раз платформанезависимы - MS SQL это скорее исключение
6 янв 04, 10:35    [482111]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
Roman Ignatiev
Member

Откуда: Москва
Сообщений: 680
tygra, я указал реальные параметры, по которым тестировался один из проектов. 200 соединений, через которые скрипт с максимальной скоростью работал с БД в 10Гб. Реально пока 20 пользователей максимум в поставке, на 1,5 Гб (не доросла пока). Работает.
А вот оптимизатор у MSSQL действительно гораздо лучше. Особенно это видно на join. Я это преодолеваю, используя select SP, там соединений как правило не надо. Ну и естественно, учитываю это при проектировании БД.
Вот чего нет у MSSQL, так это триггеров before, и если честно, бесит identity. НУ что стоило сделать генераторы или последовательности?
6 янв 04, 11:08    [482205]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
f_w_p
Guest
В MSSQL присутствуют UDF
То что в MSSQL называют UDF - это несколько не то, что UDF в FB.
6 янв 04, 11:21    [482239]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ну я
Member

Откуда: Москва
Сообщений: 1276
-В MSSQL присутствуют UDF.
Да, это так, некоторый аналог есть. Только доступная через них функциональность попахивает скрытыми ключиками. Ограничения на функциональность udf на меня произвели впечатление нарочно введенных, логически необъяснимых и неуместных. Для программистов mssql реализация поддержки udf выглядит по меньшей мере позорной.
6 янв 04, 11:45    [482283]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3155
to f_w_p
>-В MSSQL2000 очень неплохой оптимизатор запросов. В FB можно сказать,
>что он никакой. Поэтому приходится поработать ручками. Но после этого
>разница в производительности не такая уж значительная.

Это сколько же надо ручками поработать? У сервера то есть статистическая информация по данным, и в зависимости от нее планы запросов, генерируемые сервером, могут быть весьма и весьма различны.
6 янв 04, 13:41    [482527]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
f_w_p
Guest
Это сколько же надо ручками поработать? У сервера то есть статистическая информация по данным, и в зависимости от нее планы запросов, генерируемые сервером, могут быть весьма и весьма различны.
А никто и не говорил, что плохой оптимизатор это хорошо.
6 янв 04, 14:26    [482604]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
2 Roman Ignatiev
Вот чего нет у MSSQL, так это триггеров before
вобще-то триггеры instead отличаются от before одной строчкой (которую можно и не писать или писать по условиям - т.е. instead обладает большими возможностями)
и если честно, бесит identity
если честно - мне кажется это дело привычки

2 ну я
Для программистов mssql реализация поддержки udf выглядит по меньшей мере позорной.
А можно чуть поподробней? Может удасться логически объяснить ограничения?
6 янв 04, 15:13    [482757]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
funikovyuri
Member

Откуда: Симферополь
Сообщений: 4045
2SergSuper

т.е. instead обладает большими возможностями)

Вот как это теперь называется - БОЛЬШИЕ ВОЗМОЖНОСТИ - типа а дальше весь DRI своими руками - но зато все под контролем :)

А можно чуть поподробней? Может удасться логически объяснить ограничения?

Если мне память не изменяет - это что-то типа ESP - т.е. написаны они на C++
6 янв 04, 15:27    [482800]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
2 funikovyuri

Вот как это теперь называется - БОЛЬШИЕ ВОЗМОЖНОСТИ - типа а дальше весь DRI своими руками - но зато все под контролем :)


придираетесь
CREATE TRIGGER tr

ON tbl INSTEAD OF INSERT
AS
BEGIN
RAISERROR (50009, 16, 10)
EXEC sp_who
insert tbl select * from inserted -- и эта строчка называется "весь DRI своими руками"?

END


Если мне память не изменяет - это<UDF> что-то типа ESP - т.е. написаны они на C++
Изменяет. Например функция форматирования числа по разрядам:
ALTER  function r3(@m money)

returns varchar(20)
AS
BEGIN
declare @s varchar(20)
set @s=convert(varchar(20),@m)
if datalength(@s)>6 set @s=stuff(@s,datalength(@s)-5,0,' ') --123.56

if datalength(@s)>10 set @s=stuff(@s,datalength(@s)-9,0,' ') --123 4567.90

if datalength(@s)>14 set @s=stuff(@s,datalength(@s)-13,0,' ') --123.56

if datalength(@s)>18 set @s=stuff(@s,datalength(@s)-17,0,' ') --123.56

return @s
END
go

select dbo.r3(12312313.20) -- выдаст 12 312 313.20


А ESP это действительно внешняя DLL, можно и на С++
6 янв 04, 16:39    [482919]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
funikovyuri
Member

Откуда: Симферополь
Сообщений: 4045
2SergSuper

Я вообще-то тоже на MS SQL сижу - так что не надо объяснять что такое там UDF и ESP :)

Я говорил про IB UDF
6 янв 04, 17:00    [482955]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ну я
Member

Откуда: Москва
Сообщений: 1276
Для программистов mssql реализация поддержки udf выглядит по меньшей мере позорной.
А можно чуть поподробней? Может удасться логически объяснить ограничения?

К проблемам (возможно, субъективно, но кому-то судить надо) отношу
* ограничение передаваемых данных в 255 байт на одно атомарное значение
* приписывание всем вызовам udf так называемого "недетерминированного" статуса и отказ от генерации стабильного плана функции, которая обращается к такой udf.
Возможно, в совсем уж нюансах разобрался не досконально, но вот эти два меня просто убили. Не уверен, что логические объяснения сильно помогут, но услышать их не откажусь. Кстати, если есть ссылки на толковые описания их нюансов, прошу в студию.
6 янв 04, 17:39    [483010]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
ну я
* ограничение передаваемых данных в 255 байт на одно атомарное значение
* приписывание всем вызовам udf так называемого "недетерминированного" статуса и отказ от генерации стабильного плана функции, которая обращается к такой udf.

А откуда такие сведения о UDF MSSQL ? Функции в MSSQL поддерживают до 1024 параметров, параметр может быть любого типа, в том числе и VARCHAR(8000), функция может быть DETERMINISTIC и NOT DETERMINISTIC. Насчет "стабильного плана функции" честно говоря не понял, что имелось ввиду. По моему функции в MSSQL просто прекрасно реализованы и нареканий к ним нет. А возможность с функций возвращать набор данных как inline-запрос или с табличной переменной, это вообще здорово и приятно во всех отношениях. Так что хоть мы и земляки, я с Вами не согласен :)
6 янв 04, 19:03    [483092]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ну я
Member

Откуда: Москва
Сообщений: 1276
А откуда такие сведения о UDF MSSQL ? Функции в MSSQL поддерживают до 1024 параметров, параметр может быть любого типа, в том числе и VARCHAR(8000), функция может быть DETERMINISTIC и NOT DETERMINISTIC

Возможно, мы разошлись в теме разговора. Под udf я понимал то же самое что в ib - внешний плагинчик в виде dll. А сведения - из BOL и лекций с курсов по mssql.
8 янв 04, 12:35    [483916]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Ну вообще то User Defined Function не обязательно должна быть Extended. У меня еще, честно говоря, на MSSQL 2000 ни разу не возникало потребности писать что то внешнее на DLL, все прекрасно реализуется штатными средствами MSSQL. То же самое можно сказать и о Sybase ASA - там можно спокойно писать на Java ХП и UDF, и мне это еще ни разу не понадобилось. В большинстве задач СУБД это и не нужно, extended procedure как я считаю пишутся по 2 причинам:
1. Для чего то специфического. Хотя в данном случае что то специфическое наверное легче реализовать средствами клиентского приложения или 3-его звена.
2. Из за недостатка штатной функциональности СУБД. В MSSQL этого не наблюдается. Не знаю как сейчас, а вот в IB 5.5 это наблюдалось и в свое время, работая на нем, действительно приходилось дописывать свои DLL и пользоваться сторонними библиотеками UDF-функций. Раз Вы еще об этом говорите, значит я так понимаю недостаток функциональности в последних версиях IB остался.
8 янв 04, 13:29    [484008]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
ну я
Member

Откуда: Москва
Сообщений: 1276
2 ASCRUS:
Честно говоря, у меня и в мыслях не было, что предметом технического разговора может быть "сойтись во мнении" или "согласиться", ну да ладно. Раз вам не понадобилось - ну что ж, ну повезло. Мне вот повезло меньше.

Как-то читал доку на какую-то прогу (уже не помню какую), запомнилось про описание инсталляции:
dos - распакуйте в новый каталог
windows - запустите setup.exe
unix - выполните скрипт такой-то
mac - вам это не нужно знать ;-)
8 янв 04, 14:41    [484160]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение MSSQL и Ibase  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
2 ну я

Насчет ограничения 255. Я не знаю где в БОЛ это Вы нашли, там есть только ограничения на text, cursor и т.д., а так стандартно - 8000.

Детерминированность. Я чесно говоря слабо понимаю что это такое. В жизни это чувствуется что нельзя использовать внутри функции встроенные функции getdate и rand, и нельзя использовать функции, которые используют таблицы, для default. Вот и все ограничения.

Если Вы под UDF подразумеваете внешний плагинчик в виде dll то там и этих ограничений нет. Единственно что: Вы получите процедуру, а не функцию(с помощью которой правда можно сделать функцию).

Так что насчет позорной реализации - наверное слишком.
8 янв 04, 15:04    [484216]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить