|
|
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Всем привет! Фирма берется за разработку крупного коммерческого проекта с использованием Delphi и СУБД (MS SQL Server или Firebird) пока не определились. 1 - Хотелось бы выслушать тех у кого был опыт работы и с тем и с другим. Пока склоняются в сторону Firebird (аргумент бесплатность, ведь используя MS SQL отсекается доля потенциальных покупателей у кого не установлен MS SQL или автоматом идет удорожание проекта) 2 - Я лично с FB не работал. Мой опыт это (MS SQL + Sybase) в связи с этим интересно мнение людей принимавших участие в средних и выше проектах с использованием FB (ее надежность, скорость, устойчивость к нагрузкам и др). Что я понимаю под сложностью "выше среднего": Проект предполагает не менее 100-150 клиентских подключений и около 100 таблиц в начальной стадии дистрибутива, в процессе эксплуатации кол-во таблиц будет расти. Таблицы будут содержать текстовую и графическую информацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 13:13 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
MSSQL ужасная субд :) но ... http://www.sql.ru/forum/actualthread.aspx?tid=191005&pg=2#1650676 вот и решайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 13:55 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!MSSQL ужасная субд :) Но симпатичная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 14:02 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! MSSQL ужасная субд :) Забанить за розжигание Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 14:09 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!но ... http://www.sql.ru/forum/actualthread.aspx?tid=191005&pg=2#1650676 вот и решайте. Оно у тебя в избранном? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 14:18 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Aleksei_dФирма берется за разработку крупного коммерческого проекта с использованием Delphi и СУБД (MS SQL Server или Firebird) пока не определились. Firebird не предназначен для крупных проектов. Для крупного коммерческого проекта - крупный коммерческий софт :) Aleksei_d 1 - Хотелось бы выслушать тех у кого был опыт работы и с тем и с другим. Пока склоняются в сторону Firebird (аргумент бесплатность, ведь используя MS SQL отсекается доля потенциальных покупателей у кого не установлен MS SQL или автоматом идет удорожание проекта) Я совсем не поклонник MSSQL, но минусы Firebird: - нет инкрементных backup и де-факто нет логов => крайне скудные возможности восстановления - очень плохо с распараллеливанием (даже в рамках SMP) и буферизацей - нет возможности перехода вверх на Enterprise-версии - бедный SQL (правда, тут MSSQL тоже не очень...) - крайне корявая реорганизация БД (через backup-restore) - отвратный оптимизатор (надо ОЧЕНЬ тщательно писать запросы) - ... Единственный плюс - компактность и нетребовательность к ресурсам. Отсюда и все недостатки :) Aleksei_d 2 - Я лично с FB не работал. Мой опыт это (MS SQL + Sybase) в связи с этим интересно мнение людей принимавших участие в средних и выше проектах с использованием FB (ее надежность, скорость, устойчивость к нагрузкам и др) Проект предполагает не менее 100-150 клиентских подключений и около 100 таблиц в начальной стадии дистрибутива, в процессе эксплуатации кол-во таблиц будет расти. Таблицы будут содержать текстовую и графическую информацию. У меня достаточно большой опыт работы с Firebird и IBM DB2, с MSSQL - довольно скудный. Мое мнение: Firebird - это СУБД для простых втроенных / коробочных систем без обслуживания. Мой любимый совет - IBM DB2 Express-C. Совсем бесплатна, почти все фичи взрослых версий, кроме Enterprise (общий код) + часть дополнительных, почти полный автомат в обслуживании, нет ограничений на данные-коннекты и т.д., только 2 проц. ядра / 2 ГБ ОП. Есть нативное хранение / индексация / запросы XML, полнотекстовая индексация и запросы (Net Search Extender), рекурсивный SQL, прекрасный оптимизатор, туча утилит, бесплатная граф. среда разработки и администрирования... Вобщем, imho ЕДИНСТВЕННАЯ на рынке бесплатная (без ограничений на данные) версия "взрослой" СУБД. С Firebird'ом сравнивать по функционалу бессмысленно. Кстати, из Delphi Enterprise к DB2 можно обращаться через dbExpress, ADO DB, ODBC... Я с ней работаю из C++ Builder и VS (С++). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 15:50 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favnбедный SQL (правда, тут MSSQL тоже не очень...) И чего Вам не хватает и, самое главное, для чего?! FavnМой любимый совет - IBM DB2 Express-C. Совсем бесплатна, почти все фичи взрослых версий, кроме Enterprise (общий код) + часть дополнительных, почти полный автомат в обслуживании, нет ограничений на данные-коннекты и т.д., только 2 проц. ядра / 2 ГБ ОП. Есть нативное хранение / индексация / запросы XML, полнотекстовая индексация и запросы (Net Search Extender), рекурсивный SQL, прекрасный оптимизатор, туча утилит, бесплатная граф. среда разработки и администрирования... Вобщем, imho ЕДИНСТВЕННАЯ на рынке бесплатная (без ограничений на данные) версия "взрослой" СУБД. И потом, ищи-свищи спецов по ИБМ, особенно в регионах. А вот 1С со скулем, уже чуть ли ни в каждой забегаловке стоит. 2 Aleksei_d Берите MS SQL - не пожалеете. Это уже мой любимый совет. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 17:16 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnУ меня достаточно большой опыт работы с Firebird и IBM DB2, с MSSQL - довольно скудный. Мое мнение: Firebird - это СУБД для простых втроенных / коробочных систем без обслуживания. Мой любимый совет - IBM DB2 Express-C. Совсем бесплатна, почти все фичи взрослых версий, кроме Enterprise (общий код) + часть дополнительных, почти полный автомат в обслуживании, нет ограничений на данные-коннекты и т.д., только 2 проц. ядра / 2 ГБ ОП... Кстати, чего там в последних версиях DB2 c колэйшенами? Или по прежнему "Ёжик" <> "ежик" по любому? GUID ввели уже? Срадства разработки серверной части какие? Я в свое время Quest Central юзал. По сравнению с MSSQL-ми даже встроенными средствами, DB2 в этом плане геморой еще тот. Мое ИМНО: DB2 - делает по скорости запросов и MSSQL и Oracle. Иногда, при очень больших объемах это сильно заметно. При этом по удобству работы, скорости проектирования и работе с модными наворотами она уступает последним. На Firebird в коммерческом проекте лучше забить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 17:44 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklin Favnбедный SQL (правда, тут MSSQL тоже не очень...) И чего Вам не хватает и, самое главное, для чего?! В DB2 - действительно навороченный язык запросов. Отчасти для компенсации отсутствия банальных хранимок в предыдущих версиях. Раньше их нужно было неприменно на сях компилировать под платформу - гемор еще тот, зато быстро работали. Вроде как только сейчас исправили, хотя я уже давно с DB2 не общался. Но по большому счету нет там ничего такого, чего бы нельзя было компенсировать в том же Transact-SQL условно двумя-тремя операторами. Тем более, что с появлением тех же CTE и других новшеств в MSSQL2005 разрыв в SQL-е сокращается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 17:54 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklin И чего Вам не хватает и, самое главное, для чего?! Например, раздражает необходимость писать в MS SQL процедуры с циклами там, где в DB2 достаточно одного запроса. Нет предиката WITH, розволяющего писать Prolog-подобные многоэтажные (в т.ч. рекурсивные) select'ы. Насколько я знаю, нет оператора MERGE (множественный insert-update-delete по условиям). Да, без этого можно обойтись - но в DB2 SQL богаче. К тому же, декларативный запрос оптимизируется/параллелится куда лучше процедуры. Не хватает XML native storage с индексами и XML-запросами. Если он нужен (фактически, иерархическая СУБД внутри реляционной), то заменить нечем. pkarklin И потом, ищи-свищи спецов по ИБМ, особенно в регионах. А вот 1С со скулем, уже чуть ли ни в каждой забегаловке стоит. DB2 9.5 спокойненько может жить в автономе. Ее надо один раз настроить и прописать автомат. администрирование. Мы ее встраиваем в т.ч. в закрытое оборудование, без администрирования руками вообще. К тому же, с простыми операциями типа backup-resore-runstat-reorg разберется за 1 день любой DBA с опытом в любой СУБД - все есть в граф. интерфейсе. Вся дока есть на русском. Кстати, 1С живет и с DB2 (у 1С даже есть дистрибутив Express-C на сайте :). pkarklin Берите MS SQL - не пожалеете. Это уже мой любимый совет. ;) На вкус, цвет и СУБД - товарищей нет :) Если бы речь шла о платных СУБД - универсальный совет использовать то, что хорошо знаешь. Но у халявной, в т.ч. для распространения, DB2 Express-C сейчас по совокупности свойств вообще нет конкурентов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 18:00 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnНапример, раздражает необходимость писать в MS SQL процедуры с циклами там, где в DB2 достаточно одного запроса. Нет предиката WITH, розволяющего писать Prolog-подобные многоэтажные (в т.ч. рекурсивные) select'ы. Насколько я знаю, нет оператора MERGE (множественный insert-update-delete по условиям). Да, без этого можно обойтись - но в DB2 SQL богаче. К тому же, декларативный запрос оптимизируется/параллелится куда лучше процедуры.Favn, вы отстали от жизни. WITH - уже есть в MSSQL, а так же куча всего другого. MERGE появится в 2008. FavnDB2 9.5 спокойненько может жить в автономе. Ее надо один раз настроить и прописать автомат. администрирование.Может, может... Но MSSQL может не хуже. FavnЕсли бы речь шла о платных СУБД - универсальный совет использовать то, что хорошо знаешь. Но у халявной, в т.ч. для распространения, DB2 Express-C сейчас по совокупности свойств вообще нет конкурентов.Не забывайте про MSSQL2005 Express. Он конечно немного обрезанный. Но на первое время в маленькой конторке даже он справляется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 18:08 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Leonid В DB2 - действительно навороченный язык запросов. Отчасти для компенсации отсутствия банальных хранимок в предыдущих версиях. Раньше их нужно было неприменно на сях компилировать под платформу - гемор еще тот, зато быстро работали. Вроде как только сейчас исправили, хотя я уже давно с DB2 не общался. ОЧЕНЬ давно :) Процедурный SQL есть в DB2 уже много лет. Хранимки и функции можно писать на нем, можно на Java. Хотя и на С писать все еще можно, для ценителей :) Скорее, навороты процедурного языка нужны для компенсации бедного SQL. LeonidНо по большому счету нет там ничего такого, чего бы нельзя было компенсировать в том же Transact-SQL условно двумя-тремя операторами. Не спорю. Но при сложной обработке оптимизатор гораздо лучше переварит/распараллелит один большой запрос, чем кучку вложенных циклов. Ксати, оптимизатор в DB2 полностью переформулировает весь запрос, со всеми неявными функциями-триггерами. С процедурой сие невозможно по определению. В SQL все-таки лучше писать ЧТО, а не КАК. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 18:17 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnНе спорю. Но при сложной обработке оптимизатор гораздо лучше переварит/распараллелит один большой запрос, чем кучку вложенных циклов. Ксати, оптимизатор в DB2 полностью переформулировает весь запрос, со всеми неявными функциями-триггерами. С процедурой сие невозможно по определению. В SQL все-таки лучше писать ЧТО, а не КАК.Все так. Но, я бы на вашем месте излишне не нахваливал оптимизатор DB2, поскольку у MSSQL оптимизатор запросов не то что хорош, а чуть ли не лучший. К тому же, как я уже сказал, язык запросов MSSQL уже очень близок к возможностям DB2. Не забывайте еще, что MSSQL2005 уже не блокировочник, а некая хренотень по желанию: хочешь тебе блокировочник, хочешь - версионник с честной поддержкой serializable. Вы не ответили про колэйшены в DB2. Уже можно заставить "Ёжик" = ''ежик" настройками базы? GUID есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 18:42 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnОЧЕНЬ давно :) Процедурный SQL есть в DB2 уже много лет. Хранимки и функции можно писать на нем, можно на Java. Хотя и на С писать все еще можно, для ценителей :) Скорее, навороты процедурного языка нужны для компенсации бедного SQL.Так ли давно? Если мне память не отшибает, то 7-ка обладая процедурным языком, на самом деле парсила его в Си-шные тексты и компилировала. Или я чего-то путаю?... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 18:55 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
LeonidFavn, вы отстали от жизни. WITH - уже есть в MSSQL, а так же куча всего другого. MERGE появится в 2008. Увы, не отстал. Я не имею в виду WITH (<table_hint> ) в MS SQL. Этого как раз нет в DB2 - ее оптимизатор настолько суров, что не принимает подсказок В DB2 WITH имеет совсем другой смысл: WITH temp1 (col1, col2) as (VALUES ( 0, 'AA'), ( 1, 'BB'), ( 2, NULL) ) , temp2 (col1, col2 ) as ( select col1, col2 from temp1 where col1 < 2 ) SELECT * FROM temp2; temp1 описывает первый предикат (таблица из 2 полей и 3 записей), temp2 его уточняет условием, select запускает выборку. Фактически, это описание "виртуальных" временных таблиц, но без их заполнения. Возможна рекурсия, можно обойти дерево одним запросом. Кто помнит Prolog - поймет весь кайф. По поводу MERGE - рад. Правда. LeonidМожет, может... Но MSSQL может не хуже. Не спорю. Я говорил о том, что нехватка админов - не проблема для не очень сложных БД, и уж тем более для БД под бесплатной версией. LeonidНе забывайте про MSSQL2005 Express. Он конечно немного обрезанный. Но на первое время в маленькой конторке даже он справляется. Угу. Ладно бы MAX 1 ГБ RAM, но вот MAX 4 ГБ данных в БД... Тут по поводу немного обрезанный вспоминается куча анекдотов Версия с ограничением по объему данных - по определению ознакомительная , а не бесплатная . ЭТО нельзя использовать в коммерческих проектах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 19:00 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
LeonidТак ли давно? Если мне память не отшибает, то 7-ка обладая процедурным языком, на самом деле парсила его в Си-шные тексты и компилировала. Или я чего-то путаю?... Все так. Было. Но 8-ка вышла лет этак 5 назад, если не больше. Давно - понятие относительное :) Уже и 9-ка пару лет как работает. А из новостей - в свежей бесплатной Data Studio наконец-то появилась построчная отладка SQL и Java процедур на сервере, с проектами и подсветкой синтаксиса. Ну прям как в нормальном RAD, разродились наконец-то Так что пользоваться SQL-процедурами удобно стало совсем недавно, тут я не спорю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 19:13 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnЭтого как раз нет в DB2 - ее оптимизатор настолько суров, что не принимает подсказок - Favn, это очень сомнительное "преимущество", которое много раз обсуждалось. Иногда и DB2 - шный оптимизатор ошибается, а вот помочь ему, выходит, никак. Favn В DB2 WITH имеет совсем другой смысл: WITH temp1 (col1, col2) as (VALUES ( 0, 'AA'), ( 1, 'BB'), ( 2, NULL) ) , temp2 (col1, col2 ) as ( select col1, col2 from temp1 where col1 < 2 ) SELECT * FROM temp2; Favn, я именно это и имел в виду. В mssql2005 это называется CTE - common table expression. Синтаксис такой же. FavnПо поводу MERGE - рад. Правда.Собственно это практически единственное оставшееся серьезное упущение mssql в плане SQL. Хорошо, что исправят. Зато у вас в DB2 табличных переменных по моему как не было так и нет (не путать с временными таблицамми) FavnНе спорю. Я говорил о том, что нехватка админов - не проблема для не очень сложных БД, и уж тем более для БД под бесплатной версией.Еще какая проблема! А вот админа на MSSQL, при том который даже в случае чего чего-нибудь подправить сможет, уже почти в каждой дыре найдешь. LeonidВерсия с ограничением по объему данных - по определению ознакомительная , а не бесплатная . ЭТО нельзя использовать в коммерческих проектах.Вы знаете, использовали уже и нормально. У тех пользователей у которых скажем с десяток другой заказов в день + в базе ни сканированных документов ни картинок - 4Gb - на годы хватит (не говоря уже о возможности архивации в другую базу, например). Да чаще всего ни кого не коробит свежетянутый полноценный сервер поставить - кому какое дело (не забывайте, где живем :) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 19:19 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnIBM DB2 Express-C. Совсем бесплатна, почти все фичи взрослых версий, кроме Enterprise (общий код) + часть дополнительных, почти полный автомат в обслуживании, нет ограничений на данные-коннекты и т.д., только 2 проц. ядра / 2 ГБ ОП. Просто идеально подходит под наши задачи, но есть одно НО... Вот это самое ограничение, только не в 2, а 4 Гб ОП (только что с сайта IBM, видимо они решили поднять планку). Большинство наших потенциальных клиентов имеют серьезное оборудование и могут планировать апгрейды на ближайшие лет 5, а соответственно отдел маркетинга может начать "бычить" по поводу ограничений и связанных с этим сложностях продаж. Firebird действительно слабоват... По моим субъективным ощушениям. Окончательное решение за маркетингом, думаю, что будут смотреть в сторону MS SQL Server по причине: 1. Сегмент рынка у них все же больше чем у IBM 2. Большинство программистов учавствущих в проекте имеют опыт работы с MS SQL 3. DB2 Express-C менее документирована. Хотя ИМХО: очень заслуживает внимания. 2Favn: Вопросик: Я на сайте ibm не нашел принцип ограничения в 4 Гб (все что больше не используем или если больше то просто не работаем)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 19:41 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnКоллейшены есть, настраиваются, в т.ч. для Unicode.Они вроде и в 7-ке были, но какие-то кривые что ли. Ну может исправили. Главное для себя проверьте, что "мёдов" = "мЕдов", иначе можете "огрести" двух "мёдовых". В старой DB-тушке запросто. Народ извращался в поисковых запросах. GUID - это (Globally Unique Identifier). Что-нибудь типа '{3CDD5964-76C3-4B77-94F2-761E597AB61C}' mssql - поддерживает его найтивно. Можно даже вместо целочисленного ID-шника использовать, но вообще - идеальное средство для всяких там рукотворных сверок и репликаций, поскольку совпадение практически невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 19:59 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Упс. Случайно опубликовал. Мыша дрогнула. LeonidКстати, чего там в последних версиях DB2 c колэйшенами? Или по прежнему "Ёжик" <> "ежик" по любому? GUID ввели уже? Коллейшены есть, настраиваются, в т.ч. для Unicode. GUID - это ROW_ID? Тогда - уже появился в 9.5. Только что :) LeonidСрадства разработки серверной части какие? Я в свое время Quest Central юзал. По сравнению с MSSQL-ми даже встроенными средствами, DB2 в этом плане геморой еще тот. Угу. И тот был геморрой, и этот - тоже :) К счастью, тока что вышла халявная IBM Data Studio на Eclipse. Почти все, за что надо было платить Quest sofware за Toad (или красть оную :) - умеет сама. Quest Central - тоже остался, родимый LeonidМое ИМНО: DB2 - делает по скорости запросов и MSSQL и Oracle. Иногда, при очень больших объемах это сильно заметно. При этом по удобству работы, скорости проектирования и работе с модными наворотами она уступает последним. На Firebird в коммерческом проекте лучше забить. Согласен, но сейчас и с удобством дело сильно исправилось. Firebird для коммерческого применения пригоден, но для совсем компактных (или встроенных) проектов. Типа халтур :) LeonidИногда и DB2 - шный оптимизатор ошибается, а вот помочь ему, выходит, никак. Но, я бы на вашем месте излишне не нахваливал оптимизатор DB2, поскольку у MSSQL оптимизатор запросов не то что хорош, а чуть ли не лучший. К тому же, как я уже сказал, язык запросов MSSQL уже очень близок к возможностям DB2. Теоретически - может быть. Я с ошибками не сталкивался. По поводу крутости - IBM как раз считает, что это у нее лучший в отрасли оптимизатор. Думаю, у Оракл будет еще одно мнение По поводу SQL - мое мнение сформировано опытом этак 6-летней давности. Если с тех пор SQL у MS стал лучше - рад. Но - только что почитал о фичах 2008. Не нашел ничего, чего еще нет в DB2. LeonidFavn, я именно это и имел в виду. В mssql2005 это называется CTE - common table expression. Синтаксис такой же. А рекурсия допускается?! (с маниакальным блеском в глазах :) Leonid Не забывайте еще, что MSSQL2005 уже не блокировочник, а некая хренотень по желанию: хочешь тебе блокировочник, хочешь - версионник с честной поддержкой serializable. В 9.5 появился механизм "оптимистичной блокировки". Фактически - версионное чтение с возможностью последующей проверки записи на предмет ее изменения по ROW_ID. DB2 сама обновляет спец. поле с временем последнего изменения записи. LeonidЗато у вас в DB2 табличных переменных по моему как не было так и нет (не путать с временными таблицамми) В 9.5 появились массивы. И есть функция TABLE, формирующая таблицу из всего, что ей скормят :) LeonidЕще какая проблема! А вот админа на MSSQL, при том который даже в случае чего чего-нибудь подправить сможет, уже почти в каждой дыре найдешь. Ну, хорошего-то не во всякой дыре :) Литературы куча, курсов куча, да и на базовом уровне админить DB2 9.5 стало совем не сложно - автоматы, адвизоры... Все через граф. интерфейс. LeonidДа чаще всего ни кого не коробит свежетянутый полноценный сервер поставить - кому какое дело (не забывайте, где живем :) ) Оно конечно, но тогда вообще сравнивать версии бестолку. Да и не коробит для единичного заказа, а вот ежели тиражировать систему - закоробит, и еще как! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 20:09 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Aleksei_dОкончательное решение за маркетингом, думаю, что будут смотреть в сторону MS SQL Server по причине: 1. Сегмент рынка у них все же больше чем у IBM 2. Большинство программистов учавствущих в проекте имеют опыт работы с MS SQL 3. DB2 Express-C менее документирована. Хотя ИМХО: очень заслуживает внимания. 1. В России - да, вообще - не очень :) 2. На самом деле - самый веский довод. Не считая цены :) 3. Сомнительно. Документации - куча, в т.ч. на русском. А если говорить о платной версии - саппорт IBM и в России хорош. Aleksei_d2Favn: Вопросик: Я на сайте ibm не нашел принцип ограничения в 4 Гб (все что больше не используем или если больше то просто не работаем)? Тут все для Express-C сложно. 1. Есть версия 9.1.2, у нее ограничение 4 ГБ и 4 проц ядра (не процессора!) на весь сервер. Т.е. на сервер мощнее ставить нельзя - нарушение лицензии. Для скачивания с сайта IBM уже недоступна, но есть и другие сайты :) Легально использовать ее можно и сейчас. 2. Есть версия последняя 9.5, у нее ограничение 2 ГБ и 2 ядра, но ее можно ставить на любой сервер, она сама больше не съест. У нее есть несколько полезных фич, в т.ч. полностью автоматическое управление буферами в ОП (перераспределение каждые 30 сек по ситуации, СУБД надо сказать только сколько памяти всего отъесть), лучше мультитрединг в Linux, ROW_ID, оптимистичная блокировка, кое-что в XML и т.д. IBM утверждает, что 9.5 на 2Гб живет не хуже, чем 9.1.2 на 4 Гб. Судя по форуму IBM, особо в это не верят :) Но - фичи полезные, то есть каждый может выбирать сам. 3. Есть платная подписка на Express-C 9.5 - 3000-3500$ на сервер в год. Она расширяет ее до 4 ядра / 4 Гб и добавляет репликацию и зеркальные кластеры (HADR), а также настоящий саппорт. Конкретика есть на форуме http://www.ibm.com/developerworks/forums/forum.jspa?forumID=805 Он же и саппорт для бесплатной версии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 20:32 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
LeonidGUID - это (Globally Unique Identifier). Что-нибудь типа '{3CDD5964-76C3-4B77-94F2-761E597AB61C}' mssql - поддерживает его найтивно. Можно даже вместо целочисленного ID-шника использовать, но вообще - идеальное средство для всяких там рукотворных сверок и репликаций, поскольку совпадение практически невозможно. Понял. ROW_ID уникален до следующего REORG, это не о том - просто адресный доступ к записи. Если я правильно понял, GUID можно заменить SEQUENCE - значение будет уникальным. Если ему никто RESTART не сделает :) Кроме того, есть функция, возвращающая гарантированно уникальное значение. Но - на базе TIMESTAMP, т.е. время на сервере при ее использовании назад лучше не переводить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 20:48 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn LeonidFavn, я именно это и имел в виду. В mssql2005 это называется CTE - common table expression. Синтаксис такой же. А рекурсия допускается?! (с маниакальным блеском в глазах :)Угу, допускается. В случае деревьев - самое то. FavnВ 9.5 появился механизм "оптимистичной блокировки". Фактически - версионное чтение с возможностью последующей проверки записи на предмет ее изменения по ROW_ID. DB2 сама обновляет спец. поле с временем последнего изменения записи. И что прямо таки транзакционно - версионные "срезы" БД можно получать? Скорее всего нет. Судя по вашему описанию, это какой-то более простой механизм. Хотя, честно говоря, мы можем вместе послать этих фанатов версионности - ораклистов куда подальше (тем более с их "кривенькой" несеарилизуемой версионностью :P ). По-настоящему версионность не так уж часто нужна. FavnВ 9.5 появились массивы. И есть функция TABLE, формирующая таблицу из всего, что ей скормят :)Это не совсем то. Но в любом случае везде можно обойтись временными таблицами. FavnНу, хорошего-то не во всякой дыре :) Литературы куча, курсов куча, да и на базовом уровне админить DB2 9.5 стало совем не сложно - автоматы, адвизоры... Все через граф. интерфейс.Соотношение кол-ва специалистов больше, чем 1:10 в пользу MSSQL (а судя по данному сайту так вообще 1:30 - тупо по кол-ву тем). Соответственно вероятность найти поддержку по DB2 еще падает в умножении на разряженность специалистов на просторах "Мухосранской" области. FavnОно конечно, но тогда вообще сравнивать версии бестолку. Да и не коробит для единичного заказа, а вот ежели тиражировать систему - закоробит, и еще как!Согласен. Но там других факторов до кучи. Например, если система не очень большого тиража (автосервисы или гостиницы, рестораны), но дорогая => стоимость сервера потеряется на общем фоне. А если система ну совсем массовая (for people), то там ни mssql ни DB2 не очень катят. Короче, ладно, успехов во "ВРЕДнении DB2 доверчивым клиентам" (шучу). Покеда! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 21:07 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnНапример, раздражает необходимость писать в MS SQL процедуры с циклами там, где в DB2 достаточно одного запроса. Нет предиката WITH, розволяющего писать Prolog-подобные многоэтажные (в т.ч. рекурсивные) select'ы. Насколько я знаю, нет оператора MERGE (множественный insert-update-delete по условиям). Да, без этого можно обойтись - но в DB2 SQL богаче. К тому же, декларативный запрос оптимизируется/параллелится куда лучше процедуры. Не хватает XML native storage с индексами и XML-запросами. Если он нужен (фактически, иерархическая СУБД внутри реляционной), то заменить нечем. WITH - есть. MERGE скоро будет. Оптимизируется\параллелиться и адхок запросы и хп. XML нативсторедж с индексами есть. FavnDB2 9.5 спокойненько может жить в автономе. Ее надо один раз настроить и прописать автомат. администрирование. Мы ее встраиваем в т.ч. в закрытое оборудование, без администрирования руками вообще. К тому же, с простыми операциями типа backup-resore-runstat-reorg разберется за 1 день любой DBA с опытом в любой СУБД - все есть в граф. интерфейсе. Вся дока есть на русском. Заменяем DB2 на MS SQL - все остается правдой. FavnНа вкус, цвет и СУБД - товарищей нет :) Если бы речь шла о платных СУБД - универсальный совет использовать то, что хорошо знаешь. Но у халявной, в т.ч. для распространения, DB2 Express-C сейчас по совокупности свойств вообще нет конкурентов. Если не считать ограничения на размер бд в 4 гига - MS SQL Express Editiоn. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 09:31 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Гы... Писал ответ, не обновив ветку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 09:32 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
LeonidИ что прямо таки транзакционно - версионные "срезы" БД можно получать? Скорее всего нет. Хотя, честно говоря, мы можем вместе послать этих фанатов версионности - ораклистов куда подальше (тем более с их "кривенькой" несеарилизуемой версионностью :P ). По-настоящему версионность не так уж часто нужна. Срезы - нельзя. Это просто возможность отпускать блокировку записи сразу после ее чтения (при CS), а не после чтения всего курсора. И проверять потом при желании, не изменил ли ее кто. Послать фанатов готов всегда. :) Имхо, версионность требует ОЧЕНЬ аккуратного обращения - читать неактуальные данные удовольствие сомнительное. LeonidСоответственно вероятность найти поддержку по DB2 еще падает в умножении на разряженность специалистов на просторах "Мухосранской" области. Оно конечно, но на уровне бесплатного сервера особой поддержки не требуется. К тому же, все можно делать удаленно и брать за поддержку денежку ;) LeonidНапример, если система не очень большого тиража (автосервисы или гостиницы, рестораны), но дорогая => стоимость сервера потеряется на общем фоне. А если система ну совсем массовая (for people), то там ни mssql ни DB2 не очень катят. Не согласен. Server 2003 - 900$, SQL 2005 - 3800$ за процессор. Минимум 4500$. В сравнении с 0$ весьма заметно, тем более - с каждой установки :) А для массовых систем - мы с большим облегчением перевели проекты с Firebird на DB2 Express-C сразу после ее выхода. LeonidКороче, ладно, успехов во "ВРЕДнении DB2 доверчивым клиентам" (шучу). Да мы и вредняем готовые закрытые продукты. А что внутри DB2 клиентам не очень-то интересно. Они и слов-то таких не знают :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 15:09 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklinWITH - есть. MERGE скоро будет. Оптимизируется\параллелиться и адхок запросы и хп. XML нативсторедж с индексами есть. Рад. Наконец-то начали догонять! Глядишь, и IBM быстрее зашевелится :) pkarklinЗаменяем DB2 на MS SQL - все остается правдой. Да. И я как раз о том же - на базовом уровне администрирование проблем не составляет. pkarklinЕсли не считать ограничения на размер бд в 4 гига - MS SQL Express Editiоn. А вот тут - позвольте не поверить. По функционалу конкурент DB2 Express-C - это не MS SQL Express, а вовсе даже MS SQL Workgroup, см. http://www.microsoft.com/Rus/Sql/ProdInfo/Features/compare-features.mspx Итог (Проц - RAM - объем - цена): DB2 Express-C 9.1.2: 4 ядра - 4Гб - неограничен - бесплатно DB2 Express-C 9.5: 2 ядра - 2Гб - неограничен - бесплатно MS SQL Express: 1 проц - 1Гб - 4Гб - бесплатно MS SQL Workgroup: 2 проца - 3Гб - неограничен - 3800$ за 1 проц. Причем DB2 9.1.2 и MS SQL - ограничения на сервер в целом . Т.е. в реальности СУБД достается еще меньше ресурса. А DB2 9.5 ставиться на любой сервер, что может заметно увеличить производительность стоящего там же сервера приложений за счет локального, а не сетевого коннекта к БД. Кроме того, в любой халявной DB2 есть родной x64 для любой платформы, а у MS - нет даже в Workgroup, про платформы - вообще молчу А MS SQL Workgroup, как я уже писал, обойдется от 4500$ (на 1 проц. вместе с ОС), см. http://www.microsoft.com/sql/howtobuy/editionspricing.mspx Кстати, знатоки MS, 3800$ на процессор - это за год или форева? А то там нет отказоустойчивого кластера и поддержки репликации, которые включены в платную подписку на Express-C за те же деньги за год. Кроме того, нет поддержки x64 и памяти 3 Гб вместо 4 Гб у DB2 (причем у MS - на сервер в целом) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 15:17 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnMS SQL Express: 1 проц - 1Гб - 4Гб - бесплатно Вот тут небольшая неточность. Точнее недосказанность. Вы совершенно правильно указали, что 1 проц, но это именно проц, но Express может использовать все имеющиеся у него ядра. Будет 4 ядра, значит будет использовать 4ре. FavnПричем DB2 9.1.2 и MS SQL - ограничения на сервер в целом. Т.е. в реальности СУБД достается еще меньше ресурса. Вот это вот я не понял, что за ограничение "на сервер в целом"?! 1Гиг памяти (при наличии как минимум 2х) Express получит запросто и шедуллеры замутит по числу ядер. FavnКроме того, в любой халявной DB2 есть родной x64 для любой платформы, а у MS - нет даже в Workgroup, Кому хватило денег на х64, тот врядли будети глядеть в сторону Workgroup и уж тем более Express. FavnКстати, знатоки MS, 3800$ на процессор - это за год или форева? Форева. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 15:30 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnFirebird не предназначен для крупных проектов. смотря что считать "крупным проектом". Вы сами знаете, а для начинающих "крупный" - это 30 пользователей и 1 гиг база. FavnЯ совсем не поклонник MSSQL, но минусы Firebird: Вы, видать, очень давно с FB работали, и "мимоходом". 1. инкрементные бэкапы есть, логи не нужны 2. распараллеливание - classic, никаких проблем и с "буферизацией". Мне интересно, до каких пор будут петь эту песню те, кто classic не использовал. 3. никаких enterprise-версий нет, они не нужны. исходный комплект можно использовать хоть для однопользовательских систем, хоть для Enterprise. 4. реорганизация через B/R - не могу сказать что "корявая". если она вообще нужна. 5. "отвратный оптимизатор" - как раз вполне нормальный, тщательность при написании запросов нужна только тем, кто не знает SQL. FavnУ меня достаточно большой опыт работы с Firebird судя по вышеизложенному - вполне поверхностный опыт, причем большая часть "мнения" составлена с чужих слов. авторС Firebird'ом сравнивать по функционалу бессмысленно. надеюсь, что никто не спорит с этим и FB с DB2 не сравнивает. При этом db2 используется в России намного реже, чем FB, и чем другие СУБД. авторDelphi Enterprise к DB2 можно обращаться через dbExpress, ADO DB, ODBC... наконец-то. Впрочем, в части connectivity сейчас ни у каких СУБД проблем нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 15:56 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklinВот тут небольшая неточность. Точнее недосказанность. Вы совершенно правильно указали, что 1 проц, но это именно проц, но Express может использовать все имеющиеся у него ядра. Будет 4 ядра, значит будет использовать 4ре. Угу. И что эти 4 ядра будут делать на жалком 1ГБ ОП с базой до 4Гб? А если данных станет больше несчасных 4Гб - стреляться или в магазин за платной версией бежать?! Система-то остановится! Такой подход к коммерческим продуктам не применим. А я DB2 не для удовольствия использую, а для денег заработать :) pkarklinВот это вот я не понял, что за ограничение "на сервер в целом"?! 1Гиг памяти (при наличии как минимум 2х) Express получит запросто и шедуллеры замутит по числу ядер. Я не только про Express: http://www.microsoft.com/sql/howtobuy/licensing.mspx#processor Processor Licensing Model ...Under this structure, a customer acquires a separate Processor license for each processor that is located in the server running the SQL Server software. То есть, нельзя установить на сервер с аппаратным числом процов > указанного в лицензии. DB2 9.5 ставится на любой сервер и сама больше положенного не ест. Кстати, в лицензиях MS SQL я не понял - ограничение по памяти тоже на сервер в целом или сама больше не съест и легально ставить можно на любой объем ОП? pkarklinКому хватило денег на х64, тот врядли будет и глядеть в сторону Workgroup и уж тем более Express. На что хватило денег?! x64 проц сейчас в любом нотбуке стоит. На серверах НЕТ не-x64 процессоров. x64 поддерживают даже WinProfessional и Linux. Как влияют вдвое бОльшие регистры и обмен с памятью на производительность СУБД - объяснять? К тому же - в DB2 бесплатно! А в весьма платном MS Workgroup - x64 нет pkarklinФорева. :) И на том спасибо. Т.е. аналог бесплатной Express-C можно получить всего за 3800$ за проц. + цена ОС! А если станет нужен кластер или репликация (да и x64) - прошу 6000$ за проц (Standart) + сколько там WinServer с кластером стоит?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 16:15 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
kdvсмотря что считать "крупным проектом". Вы сами знаете, а для начинающих "крупный" - это 30 пользователей и 1 гиг база. И при чем тут студенты? Я - про профессиональную работу. 30 коннектов и 1Гб - это даже не средний, а очень маленький проект. kdvВы, видать, очень давно с FB работали, и "мимоходом". судя по вышеизложенному - вполне поверхностный опыт, причем большая часть "мнения" составлена с чужих слов. 1. инкрементные бэкапы есть, логи не нужны 2. распараллеливание - classic, никаких проблем и с "буферизацией". Мне интересно, до каких пор будут петь эту песню те, кто classic не использовал. 3. никаких enterprise-версий нет, они не нужны. исходный комплект можно использовать хоть для однопользовательских систем, хоть для Enterprise. 4. реорганизация через B/R - не могу сказать что "корявая". если она вообще нужна. 5. "отвратный оптимизатор" - как раз вполне нормальный, тщательность при написании запросов нужна только тем, кто не знает SQL. Я работал с Firebird 3 года (версии 1.0-1.5). Потом вышел DB2 Express-C, и я работать с Firebird перестал, хотя кое-что на нем мы еще продаем (встроенный вариант). Если считать полный цикл разработки "Проектирование БД - разработка приклада - успешные продажи" поверхностным опытом, то да, он у меня поврехностный. "Чужие слова" - это документация и ibase.ru?! 1. Логи не нужны - КОМУ?! Как без накатывания логов на бэкап восстановить БД на момент краха? Под инкрементными бэкапами я понимаю on-line (без остановки работы) бэкапы с возможностью накатывания (rollforward) на них последних логов. Где это в Firebird? Логи - важнейшая часть надежной СУБД. 2. Classic запускает по отдельному сервису на каждый коннект . Это называется распараллеливанием?! Я уже не говорю о распараллеливании внутри 1-го запроса... 3. КОМУ не нужны Enterprise версии?!! Если Вы ничего не знаете о кластеризации, хранилищах и прочих фичах Enterprise, это не значит, что они никому не нужны. 4. Кому нужна реорганизация физического хранения таблиц по кластерным индексам, тот знает, зачем это делается :) А B/R коряв и дико медленен, т.к. предпологает убийство БД целиком, вместо перетасовки 1-й таблицы при необходимости. Опять же в DB2 есть хранение на RAW-партициях, вообще без файловой системы. И тогда REORG - типа дефрагментации :) 5. Тщательность в написании запросов нужна всем, и чем лучше знаешь SQL, тем лучше это понимаешь А в SQL Firebird в отстутствии у оптимизатора возможности переформулировать запрос по своему разумению, тем более. kdvнадеюсь, что никто не спорит с этим и FB с DB2 не сравнивает. При этом db2 используется в России намного реже, чем FB, и чем другие СУБД. Я сравнивал все бесплатные СУБД. Если функциональность на порядок выше, а денег не берут - почему не сравнить? И что из относительной редкости использования в России следует, при наличии официальной подробной (в т.ч. русской) документации, чего о Firebird ну совсем не скажешь? Про другие СУБД вообще - смелое утверждение :) Вообще, предлагаю сравнить по полноте информации http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg27009727 и http://www.ibm.com/developerworks/db2/products/db2luw/index.html?S_TACT=105AGX11&S_CMP=FP с любым инф. ресурсом по Firebird. Или со всеми сразу kdvнаконец-то. Впрочем, в части connectivity сейчас ни у каких СУБД проблем нет. Наконец-то - что? Прямые дрова к DB2 из Delphi/C++Builder есть уже лет 8 как. Причем - это не сторонние компоненты, а стандартная часть Delphi Enterprise. Я просто уточнил для человека, который хотел делать систему на Delphi. Вообоще, все дрова DB2, а они есть подо все - родная документированная разработка IBM, а не кем-то где-то на коленке... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 17:37 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn 1. Логи не нужны - КОМУ?! Как без накатывания логов на бэкап восстановить БД на момент краха? Определение "краха" - в студию! Какие логи ты собираешся накатывать после падения бетонной плиты на сервер? Favn Прямые дрова к DB2 из Delphi/C++Builder есть уже лет 8 как. Причем - это не сторонние компоненты, а стандартная часть Delphi Enterprise. Это ты про SQL Links из комплекта BDE? Не смеши. В стандартном Delphi Enterprise есть только одни компоненты прямого доступа - IBX. И они отнюдь не к DB2. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2008, 22:48 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovОпределение "краха" - в студию! Какие логи ты собираешся накатывать после падения бетонной плиты на сервер? Начинается бред. Где сервер и где бетонные плиты? От падения плит, бомб и марсиан БД спасает распределенный кластер или репликация, а воспаленное воображение спасает психиатр. Ликбез. Логи - это дубликат данных, содержащий всю историю их изменений. Хранятся обычно на отдельном дисковом массиве, могут дублироваться еще на один массив, в т.ч. стоящий вне досигаемости Ужасной Бетонной Плиты. Спасают от любой программно-аппаратной проблемы на севрере, приводящей к порче данных в БД. Накат логов позволяет восстановить бэкап на момент последней транзакции, а не на время бэкапа. Или бэкапы тоже не нужны по причине Бетонных Плит? Они же повсюду, от них ничто не спасает!!! Dimitry SibiryakovЭто ты про SQL Links из комплекта BDE? Не смеши. В стандартном Delphi Enterprise есть только одни компоненты прямого доступа - IBX. И они отнюдь не к DB2. Привет гостям из прошлого, ну при чем тут BDE? Его даже Borland лет так несколько как не рекомендует к использованию. Одно из отличий Delphi Enterpirse от Professional - компоненты dbExpress, которые суть прослойка для драйверов Oracle, DB2, MS SQL и т.д. Прямыми драйверами их называет Борланд, а не я. И вообще, речь не о Дельфях, которых я не фанат. Вот C++ Builder использую, наравне с другими средами. И чаще с нативными библиотеками IBM, а не с компонентами Borland. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2008, 00:26 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
вообще конечно спор с человеком у коготоро большенство сообщений в "Сравнение СУБД" выглядит глупо автор авторсмотря что считать "крупным проектом". Вы сами знаете, а для начинающих "крупный" - это 30 пользователей и 1 гиг база. И при чем тут студенты? Я - про профессиональную работу. 30 коннектов и 1Гб - это даже не средний, а очень маленький проект. 1, а может не спорить и спросить у топик стартера что он считает ? 2, конторы которые ориентируются на сотни человек наврятли будут по форуму шастать и так задавать вопросы. 2,1 конторам с сотней сотрудников "бесплатные" бд с ограничением на 2-4 гига, просто смешно, лучше бы и не заикался тогда про логи. от затоплания серверной и правда не спасет =) 3, с тем же успехом поднимаешь два рейд массива , и делаешь теневую копию базы, востановление из тени 1 секунда в отличаи от востановления с логов вроде кто-то даже на nfs по оптике в другом конце здания теневую копию держал 4, для переноса на удаленую машину(и быстрого востановления) все равно рулит реплика и другая машина в другом здании, надо только сменить ИП сервера и оппа 5, "БД которая сама не падает логи не нужны" =) если не так раскажите когда они вам за ваш богатый опыт работы с firebird были нужны. про ошибки описывать ошибки старой версии интербейз это просто глупо про энтерпраз можно купить interbase с поддержкой и распаролеливании на несколько процессоров в супер версии. авторЕсли считать полный цикл разработки "Проектирование БД - разработка приклада - успешные продажи" поверхностным опытом, то да, он у меня поврехностный. успешность продаж не означает что работа с БД была грамотной, это маркетинг вон у нас стоит такое ПО(кста на МССКЛ), тоже продается видать не плохо, но пол сотни пользователей жалуется , разработчики шевелятся через раз "типа всех устраивает вас не устраивает", но купили уже, руководство больше денег не даст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2008, 10:08 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Attid вроде кто-то даже на nfs по оптике в другом конце здания теневую копию держал Не кто-то, а Алекс Пешков. Не уверен, правда, насчет другого конца здания, но fail-safe кластер у него таким образом получался. Attid 5, "БД которая сама не падает логи не нужны" =) если не так раскажите когда они вам за ваш богатый опыт работы с firebird были нужны. Пусть лучше расскажет: как именно у него падал DB2, что он потом смог поднять базу из логов (про что я и толковал с самого начала). Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2008, 13:22 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
to Favn: 1. инкрементный бэкап есть в FB 2 2. распараллеливание запроса (одного), кластеры и прочее - за гранью бесплатности. впрочем я не спорю с Вашим пониманием Enterprise - когда тысячи пользователей, терабайтные БД, кластеры и так далее. FB в этой нише не присутствует. 3. да, оптимизатор в db2 - круче не бывает. тоже не спорю. Правда, иногда и у него бывают косяки, иначе чем еще объяснить весьма посредственное "выступление" в тесте tpc-c на настройках "по умолчанию", которые ради интереса год-два провел Олег Иванов в форуме по FB. 4. комплекты документации и "ресурсы" тоже сравнивать не буду. у меня (да и у проекта FB) просто нет таких денег. теперь вернемся к исходному посту: Aleksei_dЧто я понимаю под сложностью "выше среднего": Проект предполагает не менее 100-150 клиентских подключений и около 100 таблиц в начальной стадии дистрибутива, в процессе эксплуатации кол-во таблиц будет расти. Да, db-2 express тоже вполне можно использовать для этой задачи. Но - неясен мотив, по которому Вы уехали в заоблачные высоты Hi-End Enterprise, да еще начав "фанатировать" по поводу DB2. На DB2 тут никто не наезжает, и прекрасно знают что она может (а может много чего, понятно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2008, 14:46 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnУгу. И что эти 4 ядра будут делать на жалком 1ГБ ОП с базой до 4Гб? А если данных станет больше несчасных 4Гб - стреляться или в магазин за платной версией бежать?! Система-то остановится! Такой подход к коммерческим продуктам не применим. А я DB2 не для удовольствия использую, а для денег заработать :) Что будут делать - очень будет зависеть от задачи (о которой нам мало что известно). Кто знает, м.б. там надо больше вычислительных ресурсов (обработка какой-нить числовой информации по чудовишным алгоритмам), а не размер хранииша (фото\видео). А уж планирование увеличения потребности в ресурсах - это отдельная серьезная тема, а Вы тут сказки рассказывает, что вот так вот раз и стреляться. ;) FavnЯ не только про Express: http://www.microsoft.com/sql/howtobuy/licensing.mspx#processor Processor Licensing Model ...Under this structure, a customer acquires a separate Processor license for each processor that is located in the server running the SQL Server software. То есть, нельзя установить на сервер с аппаратным числом процов > указанного в лицензии. DB2 9.5 ставится на любой сервер и сама больше положенного не ест. Кстати, в лицензиях MS SQL я не понял - ограничение по памяти тоже на сервер в целом или сама больше не съест и легально ставить можно на любой объем ОП? Интересно Вы трактуете лицензионную политику. У Вас " a customer acquires a separate Processor license for each processor " почему-то вдруг стало " нельзя установить на сервер с аппаратным числом процов > указанного в лицензии ". ;) Акститесь, Вы можете установить Express хоть на SuperDome c 64 процессорами, но использовать он будет только 1. У других редакций лицензионная чистота при использовании на сервере с числом процессоров, большим, чем число приобретенных лицензий, обеспечивается опцией конфигурирования affinity mask . Тоже самое касается и памяти, редакции, имеющие ограничения на память просто физически нельзя заставить использовать больше памяти. FavnНа что хватило денег?! x64 проц сейчас в любом нотбуке стоит. На серверах НЕТ не-x64 процессоров. x64 поддерживают даже WinProfessional и Linux. Как влияют вдвое бОльшие регистры и обмен с памятью на производительность СУБД - объяснять? К тому же - в DB2 бесплатно! А в весьма платном MS Workgroup - x64 нет И причем тут процессор?! Что x64 это только процессор?! Ведь не из за процессоров на х64 переходят, а из-за возможности прямой (а не с помощью всяких AWE) адрессации к большему объему памяти. Да Вы и сами это прекрасно понимаете. А для уровня рабочей группы по соотношения price\perfomance и х32 хватит в большинстве случаев. FavnТ.е. аналог бесплатной Express-C можно получить всего за 3800$ за проц. + цена ОС! А если станет нужен кластер или репликация (да и x64) - прошу 6000$ за проц (Standart) + сколько там WinServer с кластером стоит?! Ну, это будет не аналог, а гараздо больше, если Вы сравните перечь фич... Давайте будем так, кому нужен кластер или репликация никогда не будет смотреть на урезанные бесплатные редакции и это стоит соответсвующих денег. Не налазит одна редакция (поэтому их и несколько) на все возможные по ТТХ системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 11:14 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn пишет: > 1. Логи не нужны - КОМУ?! Как без накатывания логов на бэкап > восстановить БД на момент краха? А почему ты вдруг решил, что восстановление БД на момент сбоя необходимо буквально всем и всегда? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 13:06 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Attidвообще конечно спор с человеком у коготоро большенство сообщений в "Сравнение СУБД" выглядит глупо Прошу прощения у Великих Гуру (почти Махатм) и О-Сенсеев. Мое присутствие здесь в течение жалкого месяца и высказывания всего в 2-х ветках, конечно, начисто перечеркивают 12-летний опыт работы с СУБД. Боитесь выглядеть глупо - не затевайте спор. Attid1, а может не спорить и спросить у топик стартера что он считает ? 2, конторы которые ориентируются на сотни человек наврятли будут по форуму шастать и так задавать вопросы. 2,1 конторам с сотней сотрудников "бесплатные" бд с ограничением на 2-4 гига, просто смешно, лучше бы и не заикался тогда Топик начался с "Фирма берется за разработку крупного коммерческого проекта... аргумент - бесплатность... не менее 100-150 клиентских подключений и около 100 таблиц... кол-во таблиц будет расти..." Высказывая свое мнение, я исходил именно из этого. Attid"БД которая сама не падает логи не нужны" =) если не так раскажите когда они вам за ваш богатый опыт работы с firebird были нужны. Dimitry SibiryakovПусть лучше расскажет: как именно у него падал DB2, что он потом смог поднять базу из логов И он таки расскажет. Я ни разу не восстанавливал DB2 из дохлого состояния. Конечно, именно поэтому логи не нужны. Будем последовательны - по той же причине, естественно, никому не нужны и сами бэкапы, их ведь с успехом заменяет репликация. Кстати, в моей машине есть подушки безопасности, преднатяжители ремней и активные подголовники. К счастью, они не разу не срабатывали. Из этого со всей определенностью следует, что фичи эти совершенно бесполезные - многие и без них прекрасно ездят. Attidописывать ошибки старой версии интербейз это просто глупоНе слишком ли часто я слышу про глупость? Особо умные и внимательные могли бы заметить, что про "ошибки" Firebird я не писал ничего. Об Interbase я вообще не упоминал. Кстати, прочитал об on-line инкрементных бэкапах и логах в Firebird 2. При таком бекапировании БД останавливается, а все изменения за это время пишутся в отдельный внешний файл. По окончании бэкапа изменения накатываются на БД и внешний файл убивается. Т.е. Firebird ведет "ненужные" логи во время бэкапа, а потом накатывает изменения на живую БД и логи убивает. Крайне элегантный костыль. О влиянии на производительность условно живой в этот момент БД помолчим... Attidможно купить interbase с поддержкой и распаролеливании на несколько процессоров в супер версии.Понятно, что можно. Непонятно - зачем? Тем более, что (насколько я понимаю) к Firebird 2, о которой идет речь, Interbase 2007 вообще не имеет никакого отношения. Attid...тоже продается видать не плохо, но пол сотни пользователей жалуется , разработчики шевелятся через раз "типа всех устраивает вас не устраивает", но купили уже, руководство больше денег не даст.Сочуствую. Я здесь причем? Никто не собирается ничем мерятся, просто любезнейший kdv усомнился в моей компетенции и праве иметь собственное суждение о Firebird - и я ответил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 13:50 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
fyndaА почему ты вдруг решил, что восстановление БД на момент сбоя необходимо буквально всем и всегда?Поставим вопрос иначе - кто от этого откажется, если оно есть в бесплатной версии? Кстати, не поверишь, но вообще DBMS тоже нужны далеко не всем. kdv1. инкрементный бэкап есть в FB 2 2. распараллеливание запроса (одного), кластеры и прочее - за гранью бесплатности. впрочем я не спорю с Вашим пониманием Enterprise - когда тысячи пользователей, терабайтные БД, кластеры и так далее. FB в этой нише не присутствует. 3. да, оптимизатор в db2 - круче не бывает. тоже не спорю. Правда, иногда и у него бывают косяки, иначе чем еще объяснить весьма посредственное "выступление" в тесте tpc-c на настройках "по умолчанию", которые ради интереса год-два провел Олег Иванов в форуме по FB. 4. комплекты документации и "ресурсы" тоже сравнивать не буду. у меня (да и у проекта FB) просто нет таких денег. 1. Есть, но не без странностей - см. выше. 2. Inter-параллелизм (внутри 1-го сервера) входит в бесплатную DB2, intra- да, за большие деньги, но о нем я и не писал. 3. По умолчанию DB2 настроена на минимальное использование ресурсов. Минимальное для DB2. Сравнивая с Firebird, этого не скажешь (комплимент в сторону Firebird :) Имело смысл ее настроить с помощью Configuration Advisor - всего несколько тыков мышом в этом визарде. 4. Это не упрек - по Firebird несложно найти все, что нужно. Это ответ на "проблемы" использования DB2 в России. kdvНо - неясен мотив, по которому Вы уехали в заоблачные высоты Hi-End Enterprise, да еще начав "фанатировать" по поводу DB2. На DB2 тут никто не наезжает, и прекрасно знают что она может (а может много чего, понятно).Про Enterprise я написал всего одну фразу - в ответ на "Enteprise не нужен". Все остальные посты - о бесплатной Express-C. Платить в ней надо только за кластер-репликацию, да и то совсем не "Enterprise" деньги. "Фанатирование "- я с ней работаю, мне нравится, вот и рекомендую другим. Повоторюсь - на мой взгляд, подобное бесплатное, без лимита на объем данных, предложение - уникально на рынке. Дабы завершить флуд, бессмысленный и беспощадный, - я совсем не противник Firebird. Наша фирма на продукте с ним "внутре" неплохо заработала. Но ниша его использования серьезно ограничена - это либо встроенные решения (тут все бесспорно - прост, не требует настроек), либо небольшие (коробочные) системы без перспектив серьезного роста. Иначе - тоже можно, но стоит серьезно подумать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 14:16 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnО влиянии на производительность условно живой в этот момент БД помолчим И правильно, ибо нефига говорить о том, чего не знаешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 14:18 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn пишет: >> А почему ты вдруг решил, что восстановление БД на момент сбоя необходимо >> буквально всем и всегда? > Поставим вопрос иначе - кто от этого откажется, если оно есть в > бесплатной версии? А зачем ставить его иначе? Выше ты его уже сформулировал достаточно определенно: "Логи не нужны - КОМУ?!" Ответ: всем, кого не волнует point-in-time recovery. Таких людей немало, причем далеко не только среди пользователей Firebird. Если же скатываться до рассуждений про то, от каких фич кто-то там "не отказался бы" в бесплатной версии - боюсь в отстой придется записать практически все бесплатные сервера. > Кстати, не поверишь, но вообще DBMS тоже нужны далеко не всем. Вот только демагогию разводить не надо. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 14:47 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
fynda "Логи не нужны - КОМУ?!" Ответ: всем, кого не волнует point-in-time recovery. Таких людей немало, причем далеко не только среди пользователей Firebird. глупо. я бы таким админам яйца обрывал. для чего нужен shadow, когда в 80х придумали RAID я не совсем понимаю, но point-in-time необходим: - для защиты от апаратных сбоев контроллера HDD, который может легко запороть копии дата-файлов - от ошибки пользоваталя, который закомитил изменения. - для защиты от выгорания HDD (у меня разом 3 SCSI HDD выгорало) в любой субд сложнее dbf файликов это делается небольшим скриптиком который убирает логи на соседнюю машину. но особенный интербэйз ... хотя там говорят никому не нужный лог все же присобачили ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:25 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklinЧто будут делать - очень будет зависеть от задачи (о которой нам мало что известно). Кто знает, м.б. там надо больше вычислительных ресурсов (обработка какой-нить числовой информации по чудовишным алгоритмам), а не размер хранииша (фото\видео). А уж планирование увеличения потребности в ресурсах - это отдельная серьезная тема, а Вы тут сказки рассказывает, что вот так вот раз и стреляться. ;)Лимит в 4Гб на данные лично я считаю для коммерческого примения неприемлемым - не понятно, что делать с системой, если он вдруг исчерпан. На многих задачах с учетом событий (типа биллинга) он легко преодолевается этак за полгода с одного устройства только данными в таблицах, без всякой мультимедии. И не всегда эти данные можно выставить в архив. Хотя - все, конечно, зависит от задачи. pkarklinИнтересно Вы трактуете лицензионную политику. У Вас " a customer acquires a separate Processor license for each processor " почему-то вдруг стало " нельзя установить на сервер с аппаратным числом процов > указанного в лицензии ". ;) Акститесь, Вы можете установить Express хоть на SuperDome c 64 процессорами, но использовать он будет только 1. У других редакций лицензионная чистота при использовании на сервере с числом процессоров, большим, чем число приобретенных лицензий, обеспечивается опцией конфигурирования affinity mask . Тоже самое касается и памяти, редакции, имеющие ограничения на память просто физически нельзя заставить использовать больше памяти.Акститься - не согласен! :) 1. Я писал именно про MSSQL Workgroup Processor Licensing Model, т.к. она: не лимитирована по объему, работает с 2 проц. / 3ГБ ОП, не включает кластер, не лимитирована по числу пользователей. Т.е. ближе всего к бесплатной DB2 - по ресурсам лучше 9.5, но не лучше 9.1.2. 2. Я не спец по MS продуктам. Дословно: "A license is required for each physical or virtual processor accessed by an operating system environment running SQL Server. This license does not require any device or user client access licenses (CALs). Under this structure, a customer acquires a separate Processor license for each processor that is located in the server running the SQL Server software. If you have made a processor inaccessible to all operating system copies on which the SQL Server software is set up to run, you do not need a software license for that processor." И где тут про affinity mask? Тут про процессоры для всей ОС. И лицензия не нужна, только если процессор не доступен для всей ОС, а не для только для СУБД. По поводу памяти - наверное да, в лицензии не указано. 3. На счет лицензии на MSSQL Express - на сайте не нашел, ничего сказать не могу. pkarklinИ причем тут процессор?! Что x64 это только процессор?! Ведь не из за процессоров на х64 переходят, а из-за возможности прямой (а не с помощью всяких AWE) адрессации к большему объему памяти. Да Вы и сами это прекрасно понимаете. А для уровня рабочей группы по соотношения price\perfomance и х32 хватит в большинстве случаев. 1. x64 - это еще и немного более быстрая обработка данных за счет длинных регистров. 2. Если x32 СУБД ставить на x32 ОС, на сервер больше ничего не поместиться - ограничение в ~3.5 ГБ ОП. Если на x64 ОС - СУБД будет жить в режиме эмуляции (Windows On Windows, как это сама MS называет), что не очень страшно, но и не есть гуд. А установка на ту же железку сервера приложений (и тоже бесплатного ;) при хорошей нагрузе может улучшить производительность связки за счет локального коннекта. И это довод против лицензии на MS SQL Workgroup. 3. Лучшее соотношение price\perfomance = 0 (при весьма недурном perfomance у Express-C), а наличие x64 и Linux в бесплатной версии может быть плюсом (хотя может и не быть :) pkarklinНу, это будет не аналог, а гараздо больше, если Вы сравните перечь фич... Давайте будем так, кому нужен кластер или репликация никогда не будет смотреть на урезанные бесплатные редакции и это стоит соответсвующих денег. Не налазит одна редакция (поэтому их и несколько) на все возможные по ТТХ системы.В чем именно MS SQL Workgroup гораздо больше DB2 Express-C? Сравниваем: http://www.ibm.com/developerworks/db2/library/techarticle/0301zikopoulos/0301zikopoulos1.html (колонка DB2 Express-C 9, бесплатный) http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx (колонка Workgroup, 3800$ за процессор + ОС) Я не претендую на знание MS SQL и могу ошибаться, но нашел только наличие репликации в MS SQL Workgroup и отсутсвие у него же x64 и почему-то Linux и ;) Про кластер забудем - его нет и там, и там. Я не говорю, что MS SQL - это плохо (убедили, убедили - неплохо! :) или что DB2 - хорошо для всех, если говорить о платных версиях. Вопрос вкуса. Но DB2 бесплатно - хорошо очень, особенно в сравнении с другим бесплатными и особенно для распространения. От 4000$ с установки лучше съэкономить/взять себе, чем отдать дяде Биллу или другому дяде. Прошу поверить - гораздо лучше Кстати, Express-C уже есть на IBM Power процессорах под Linux, через месяц обещают и на Sun Solaris. А там 1 ядро imho пошустрее x86 будет. Но это так, к слову. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:27 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! в любой субд сложнее dbf файликов это делается небольшим скриптиком который убирает логи на соседнюю машину. Ну так и скажи - кому нужно восстановление данных, которые влазят в один сегмент лога?.. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:41 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Ну так и скажи - кому нужно восстановление данных, которые влазят в один сегмент лога?.. чАго ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:02 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!чАго ? Разжовываю специально для... Пока сегмент не заполнен, его не перенесешь на другую машину. Соответственно, любые перечисленные тобой ошибки уничтожают данные в нем. Стало быть хваленое восстановление point-in-time на самом деле работает как восстановление на point-in-time минус 1 лог. Ну и нахрена? Опять же разжовываю: прибегает Ё! к толстому, но глупому манагеру и кричит "А-а-а! Все пропало, у нас СУБД без логов!", манагер берет кучу бабла и идет к поставщику СУБД, который говорит "Ну да, ну да! За ваши деньги - все что угодно!" и встраивает в свою СУБД некую хрень под названием "лог". Неважно, что она делает и делает ли что-то вообще. В результате все довольны: одни получили бабло, другие - хрень, а Ё! - возможность поливать дерьмом СУБД без хрени. Иддилия! Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:14 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
2Favn политика IBM мягко говоря неадекватна. пользователи повелись на бесплатность, им дали 4 ядра и 4Gb RAM, а потом хлабысь и следующая уже только 2Gb и 2 ядра. я к примеру бы побоялся выснять, что отрежут в следующем релизе, наверника размер БД и отружет, но уже до 2Gb судя по тенденции. пользоватся старыми версиями, совет еще более неадекватный, уже через годик-два после релиза IBM снимит супорт и предложит вам выкинуть 9.1.2 на свалку истории. стоимость подписки на 9.5 в 3800$ за год конечно хорошо, но уже через 3 года превысит стоимость любой субд из первой пятерки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:19 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Пока сегмент не заполнен, его не перенесешь на другую машину. Соответственно, любые перечисленные тобой ошибки уничтожают данные в нем. Стало быть хваленое восстановление point-in-time на самом деле работает как восстановление на point-in-time минус 1 лог. а чуточку подумать ? каковы шансы к примеру взбесившему контроллеру зацепить 100Gb файлы данных на RAIDе или попасть файлик менее 20Mb (последний лог) ? зеркалить файлы данных, в десятки и сотни гб мягко говоря немного другая задача... Dimitry Sibiryakov Ну и нахрена? меня всегда вводили в ступор вопросы из серии нафига транзакции mysql3.0 зашибись как работает без них, и не тормозит как эти ораклы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:34 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnЛимит в 4Гб на данные лично я считаю для коммерческого примения неприемлемым - не понятно, что делать с системой, если он вдруг исчерпан. На многих задачах с учетом событий (типа биллинга) он легко преодолевается этак за полгода с одного устройства только данными в таблицах, без всякой мультимедии. И не всегда эти данные можно выставить в архив. Хотя - все, конечно, зависит от задачи. Дабы не ходить по кругу, предлагаю сойтись на "все, конечно, зависит от задачи". FavnЯ писал именно про MSSQL Workgroup Processor Licensing Model, т.к. она: не лимитирована по объему, работает с 2 проц. / 3ГБ ОП, не включает кластер, не лимитирована по числу пользователей. Т.е. ближе всего к бесплатной DB2 - по ресурсам лучше 9.5, но не лучше 9.1.2. По ресурсам - да. FavnЯ не спец по MS продуктам. Дословно: "A license is required for each physical or virtual processor accessed by an operating system environment running SQL Server. This license does not require any device or user client access licenses (CALs). Under this structure, a customer acquires a separate Processor license for each processor that is located in the server running the SQL Server software. If you have made a processor inaccessible to all operating system copies on which the SQL Server software is set up to run, you do not need a software license for that processor." И где тут про affinity mask? Тут про процессоры для всей ОС. И лицензия не нужна, только если процессор не доступен для всей ОС, а не для только для СУБД. Вот тут действительно, я был не прав. И пробел в моих знаниях был устранен после прочтения EULA. FavnНа счет лицензии на MSSQL Express - на сайте не нашел, ничего сказать не могу. Исходя из того, что нет никаких моделей лицензиорования Express редакции, скорее всего я прав. Во всяком случие в имеющейся у меня EULA про процессоры ничего нет. Favn1. x64 - это еще и немного более быстрая обработка данных за счет длинных регистров. Я бы не стал делать из этого источник увеичения быстродействия. :) FavnЕсли x32 СУБД ставить на x32 ОС, на сервер больше ничего не поместиться - ограничение в ~3.5 ГБ ОП. Если на x64 ОС - СУБД будет жить в режиме эмуляции (Windows On Windows, как это сама MS называет), что не очень страшно, но и не есть гуд. А установка на ту же железку сервера приложений (и тоже бесплатного ;) при хорошей нагрузе может улучшить производительность связки за счет локального коннекта. И это довод против лицензии на MS SQL Workgroup. Это м.б. рассмотрено как довод в конкретной практической ситуации. Но замечу, что TOC складывается не только из стоимости лицензий софта. FavnЛучшее соотношение price\perfomance = 0 (при весьма недурном perfomance у Express-C), а наличие x64 и Linux в бесплатной версии может быть плюсом (хотя может и не быть :) Действительно, может и не быть. FavnВ чем именно MS SQL Workgroup гораздо больше DB2 Express-C? Сравниваем: http://www.ibm.com/developerworks/db2/library/techarticle/0301zikopoulos/0301zikopoulos1.html (колонка DB2 Express-C 9, бесплатный) http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx (колонка Workgroup, 3800$ за процессор + ОС) Я не претендую на знание MS SQL и могу ошибаться, но нашел только наличие репликации в MS SQL Workgroup и отсутсвие у него же x64 и почему-то Linux и ;) Про кластер забудем - его нет и там, и там. Чего не нашел я у DB2 Express-C 9, бесплатный, но есть, у Workgroup: 1. Indexed Views (Materialized Views). 2. Queuing Support 3. Log Shipping 4. Про утилиты алминистрирования ничего не сказано. 5. SQL Server Agent (планировщик) 6. Database Mail 7. Web Assistant 8. Database Engine Tuning Advisor 9. Reporting Services (правда не с полным функционалом) 10. Integration Services А на счет Linux - Это пять!!! FavnЯ не говорю, что MS SQL - это плохо (убедили, убедили - неплохо! :) или что DB2 - хорошо для всех, если говорить о платных версиях. Вопрос вкуса. Но DB2 бесплатно - хорошо очень, особенно в сравнении с другим бесплатными и особенно для распространения. От 4000$ с установки лучше съэкономить/взять себе, чем отдать дяде Биллу или другому дяде. Прошу поверить - гораздо лучше И я не говорю, что MS SQL панацея от всех бед. Насчет, на что лучше потратить 4 килобакса, пусть каждый решает сам. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:56 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
как бы тут не сработало правило "скупой платит дважды".... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 18:04 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!политика IBM мягко говоря неадекватна. пользователи повелись на бесплатность, им дали 4 ядра и 4Gb RAM, а потом хлабысь и следующая уже только 2Gb и 2 ядра. я к примеру бы побоялся выснять, что отрежут в следующем релизе, наверника размер БД и отружет, но уже до 2Gb судя по тенденции.В любом случае, она куда адекватнее остальных, которые отрезали все и сразу :) Нынешнее обрезание объясняют немеряным повышением производительности и клянутся, что больше не будут :) На полный кирдык бесплатным версиям не похоже - они развиваются. Кстати, недавно вышел новый WebSphere Community 2.0, халявный Java application server. Что будет дальше - не знаю, в IBM не работаю. В худшем случае будет так, как сейчас у МС и Оракл, но я сильно сомневаюсь. Предлагаю говорить о том, что сейчас. Yo.!пользоватся старыми версиями, совет еще более неадекватный, уже через годик-два после релиза IBM снимит супорт и предложит вам выкинуть 9.1.2 на свалку истории. стоимость подписки на 9.5 в 3800$ за год конечно хорошо, но уже через 3 года превысит стоимость любой субд из первой пятерки...Какой суппорт? Суппорт - он денег стоит, даже в MySQL :) А версию за деньги не обрезали. Суппорт бесплатного продукта - через конференцию с сотрудниками IBM, а там отвечают и по Express-C 8. 9.1.2 - обкатанная версия, про время действия в лицензии ни слова, использовать ее никто и ни что не мешает и не сможет помешать в дальнейшем. Старой ее назвать сложно. В любом случае - на данный момент это лучшее из бесплатного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 18:13 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
2Favn супорт бесплатной версии имелось в виду фиксы хотя бы секурити дыр, как понимаете распростронение со своим продуктом субд с дырой которую ввиду старости не фиксят, клиенты могу не оценить ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 18:22 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!а чуточку подумать ? каковы шансы к примеру взбесившему контроллеру зацепить 100Gb файлы данных на RAIDе или попасть файлик менее 20Mb (последний лог) ? И там и там 100%, поскольку взбесившийся контроллер портит именно те данные, которые пишутся. Вне зависимости от размера файла, в который они пишутся. Yo.!меня всегда вводили Меня всегда вводили в ступор ответы на половину фразы. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 18:32 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! пишет: > глупо. я бы таким админам яйца обрывал. Каким "таким"? Админ - это просто инструмент, нужна или не нужна какая-то возможность для данной задачи решает не он. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 19:06 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov И там и там 100%, поскольку взбесившийся контроллер портит именно те данные, которые пишутся. Вне зависимости от размера файла, в который они пишутся. да !? а почему контроллер не проинструктировали как ему бесится ? непорядок. к стате, было бы захватующе услышать как головка при чтении вспомнит, который блок она последним записывала ЗЫ. опять же лог - штука последовательная, повреждение конца файлика никакого эфекта на востановимость и не произведет (в подаляющем кол-ве случаев). Dimitry Sibiryakov Меня всегда вводили в ступор ответы на половину фразы. т.е. вы хотите мои коментарии о том толстом и тупом манагере к которому я к счастью не ходил ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 19:42 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklinДабы не ходить по кругу, предлагаю сойтись на "все, конечно, зависит от задачи"Согласен! pkarklinЭто м.б. рассмотрено как довод в конкретной практической ситуации. Но замечу, что TOC складывается не только из стоимости лицензий софтаЭта ситуация стандартна для Web-приложений. Не вижу, чем TOC MS SQL отличается от DB2. Точнее, каждая из них вопит, что у нее гораздо меньше pkarklinЧего не нашел я у DB2 Express-C 9, бесплатный, но есть, у Workgroup: 1. Indexed Views (Materialized Views). 2. Queuing Support 3. Log Shipping 4. Про утилиты алминистрирования ничего не сказано. 5. SQL Server Agent (планировщик) 6. Database Mail 7. Web Assistant 8. Database Engine Tuning Advisor 9. Reporting Services (правда не с полным функционалом) 10. Integration Services 11. А на счет Linux - Это пять!!! Фуф! Что смог, осилил :) 1. Во всех СУБД только в Enterprise. У MS "Indexed view creation is supported in all editions. Indexed view matching by the query processor is supported only in Enterprise Edition." 2. А хто это? Если работа с Message Queuing, так это отдельный продукт, как я понимаю. К DB2 можно прикрутить WebSphere MQ, всяко не хуже (платный). 3. Как я понял - это репликация накатыванием логов на другую БД. Есть, но за деньги. 4. Есть. Бесплатно. С недавних пор - в ассортименте и со средой разработки. 5. Есть, от платных версий не отличается. 6. Если речь об оповещении о событиях по mail, то да, есть. 7. Самое смешное, что его уже нет и в MS SQL 2005 http://msdn2.microsoft.com/en-us/library/ms188002.aspx В смысле есть, но выключен по умолчанию, рекомендуют Reporting Services. Если я правильно понял, в DB2 может быть заменен XQuery + XSLT из SQL запроса. 8. Есть. 9. Написано, что для Workgroup - Report Designer only. Если это то, о чем я подумал :) - это не часть СУБД. Оно и в Access, простите за выражение, есть :) 10. Есть в MS SQL не ниже Standard, а полностью - в Enterprise. В DB2 - кажется, отдельный продукт. Речь не о них. 11. Тем не менее - позволяет сделать установку совсем бесплатной, ставить на не-Intel (Power, скоро - Sun). И - многим нравится :) Ксати, нашел http://msdn2.microsoft.com/en-us/library/ms143761.aspx Там для Workgroup написано (то, что есть в DB2): 1. Microsoft .NET Framework - No. В DB2 его поддержка есть 2. Vardecimal Storage Format - No. 3. Online Index Operations - No. Это как?! В DB2 нет HTTP Support (Native HTTP), это решается прикручиванием WebSphere application server (можно бесплатного). pkarklinИ я не говорю, что MS SQL панацея от всех бед. Насчет, на что лучше потратить 4 килобакса, пусть каждый решает сам. ;)Согласен! (И немедленно выпил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 19:44 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! т.е. вы хотите мои коментарии о том толстом и тупом манагере к которому я к счастью не ходил ? Нет, я хочу подробного рассказа как поднималась база после выгорания 3 SCSI HDD разом. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 20:09 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Нет, я хочу подробного рассказа как поднималась база после выгорания 3 SCSI HDD разом. да как обычно ... просто всего было 4 диска, выгорело 3 и по счастливой случайности выгорел диск с осью и только двумя дисками с ораклом, выживший оказался с арклогами. с тех пор у меня сервера не стоят в офисе, а арклоги я забираю rsync'ом ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 20:22 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn1. Во всех СУБД только в Enterprise. У MS "Indexed view creation is supported in all editions. Indexed view matching by the query processor is supported only in Enterprise Edition." Не угадали. Indexed views can be created in any edition of SQL Server 2005 . In SQL Server 2005 Enterprise Edition , the query optimizer automatically considers the indexed view . To use an indexed view in all other editions, the NOEXPAND table hint must be used . Favn2. А хто это? Если работа с Message Queuing, так это отдельный продукт, как я понимаю. К DB2 можно прикрутить WebSphere MQ, всяко не хуже (платный). В том то и дело, что не отдельный продукт. А "входит в поставку" за теже деньги. Favn3. Как я понял - это репликация накатыванием логов на другую БД. Есть, но за деньги. Ага. Впервую очередь для поддержки standby серверов. Входит в поставку. Favn7. Самое смешное, что его уже нет и в MS SQL 2005 http://msdn2.microsoft.com/en-us/library/ms188002.aspx В смысле есть, но выключен по умолчанию, рекомендуют Reporting Services. Если я правильно понял, в DB2 может быть заменен XQuery + XSLT из SQL запроса. Самое смешное, что он таки есть, и позволяет, не имея никакого понятия о HTML, XQuery,XSLT и изучения RS публиковать данные на WEB. Favn11. Тем не менее - позволяет сделать установку совсем бесплатной, ставить на не-Intel (Power, скоро - Sun). И - многим нравится :) "Многим" - это скольким в процентном отношении к общему числу Intel серверов\Win серверов?! У Вас есть статистические данные? Многим как раз нравится тесная интегрированность продуктов от MS, позволяющая получить единое информационное пространство. авторКсати, нашел http://msdn2.microsoft.com/en-us/library/ms143761.aspx Там для Workgroup написано (то, что есть в DB2): 1. Microsoft .NET Framework - No. В DB2 его поддержка есть 2. Vardecimal Storage Format - No. 3. Online Index Operations - No. Это как?! 1. Ну так не идет сам фреймворок в комплекте. Скачивайте (бесплатно) и устанавливайте. А подержка CLR есть. 2. Storage Format это не тоже самое, что data type. 3. Это так, что на момент построения индекса движоку не блокирует всю таблицу. Favn9. Написано, что для Workgroup - Report Designer only. Если это то, о чем я подумал :) - это не часть СУБД. Оно и в Access, простите за выражение, есть :) Нет. Не только дизайнер. Часть, не часть, но Вам не нужно докупать отдлеьно генератор отчетов да еще и с WEB доступом. Как мы видим, маркетологи от MS, на мой взгляд, удачно проработали, чего должно быть, а чего нет в редакции уровня рабочей группы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2008, 08:48 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Поддержка Хранимых процедур на CLR в DB2 появилась раньше чем в MS SQL как это ни странно звучит, так что мимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2008, 09:28 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
чя321Поддержка Хранимых процедур на CLR в DB2 появилась раньше чем в MS SQL как это ни странно звучит, так что мимо. Что мимо то?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2008, 09:36 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklinНе угадали.Просто не знал :) В DB2 есть Materialized Query Tables, но только в Enterprise (в Workgroup - за отдельные деньги). Тем не менее, можно включать в индексы "лишние" поля, не участвующие в сравнении/сортировке. Тогда оптимизатор может не обращаться к самой таблице для чтения этих полей, взяв сразу из индекса. Вообще, view в DB2 - абстракция. При компиляции запроса его определение может быть изменено оптимизатором. pkarklinВ том то и дело, что не отдельный продукт. А "входит в поставку" за теже деньги.Прочитал. Как я понял, входит в поставку WinServer, а не SQL server. То есть через COM или .Net функции/процедуры может быть спокойненько использован и DB2 на этой платформе. А может быть заменен любым другим MQ, благо их пруд пруди, в т.ч. бесплатным. pkarklinАга. Впервую очередь для поддержки standby серверов. Входит в поставку.Репликация в DB2 - за деньги. Как и у MS. Кстати, у DB2 - в комплекте с кластером. pkarklinСамое смешное, что он таки есть, и позволяет, не имея никакого понятия о HTML, XQuery,XSLT и изучения RS публиковать данные на WEB.Я, мягко говоря, не уверен, что публикация данных в Web - задача СУБД. К тому же, как я уже говорил, можно подключить любой внешний Report Generator - их пруд пруди, в т.ч. бесплатных или совсем дешевых. И все-таки лучше, дабы избежать помойки в разработке, данные публиковать через application server. pkarklin"Многим" - это скольким в процентном отношении к общему числу Intel серверов\Win серверов?! У Вас есть статистические данные? Многим как раз нравится тесная интегрированность продуктов от MS, позволяющая получить единое информационное пространство.Не стоит затевать вечный спор WIntel - LIntel - Unix. Каждому нарвится свое. Для Web-приложений Linux весьма распространен, а возможность выбора - достоинство, а не недостаток. К тому же DB2 поддерживает кучу технолгий MS (под Windows, конечно :) и вполне себе встраивается в это самое пространство. pkarklin1. Ну так не идет сам фреймворок в комплекте. Скачивайте (бесплатно) и устанавливайте. А подержка CLR есть. 2. Storage Format это не тоже самое, что data type. 3. Это так, что на момент построения индекса движоку не блокирует всю таблицу. 1. Понял. Но написанное на сайте МС звучит как анекдот 2. Не понял, но сие не важно. 3. В DB2 задается в команде создания или реорганизации индекса. Таблицу можно блокировать, разрешить читать или разрешить писать. Кстати, нехилое ограничение для платной Workgroup :) pkarklinНет. Не только дизайнер. Часть, не часть, но Вам не нужно докупать отдлеьно генератор отчетов да еще и с WEB доступом.Report Designer only - это у MS написано. Генрация отчетов - ну никак не функционал СУБД. Кстати, например, серверный генератор отчетов с Web достуром FastReport стоит всего 600$. Можно и бесплатный найти. pkarklinКак мы видим, маркетологи от MS, на мой взгляд, удачно проработали, чего должно быть, а чего нет в редакции уровня рабочей группы.Думаю, куда удачнее поработали маркетологи IBM, выпустив бесплатный продукт на уровне младшего платного MS (не считая репликации) и не намного хуже младшего Oracle (в Standard Edition One памяти неограничено, но и цена заметно выше) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2008, 18:50 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favnнет ограничений на данные-коннекты и т.д., только 2 проц. ядра / 2 ГБ ОП. Неправда, 9.1.2 ограничена 4Гб ОП. А кстати, зачем нужно 9.5 ставить, если есть 9.1.2? Я так понял, что 9.5 выпустили только для введения этого ограничения в 2Гб? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2008, 18:11 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
V&BНеправда, 9.1.2 ограничена 4Гб ОП.Да, и я об этом писал выше. V&BА кстати, зачем нужно 9.5 ставить, если есть 9.1.2? Я так понял, что 9.5 выпустили только для введения этого ограничения в 2Гб?Повторю различия (какие помню, по доке и конфе на IBM): - другая лицензия: 9.1.2 - ограничения на сервер в целом, 9.5 - ставится на любой сервер, сама не использует больше разрешенного (бывает полезно); - полный автомат по управлению памятью: говоришь, сколько съесть всего, дальше сама перераспределяет каждые 30 сек; - RID (row id) и optimistic locking (курсор в CS отпускает запись сразу после чтения, сохранив RID можно узнавать время ее последнего изменения); - Linux-версия лучше использует multithreading; - изменение части XML-поля, а не всего как в 9.1. Если все оно не нужно, а памяти не хватает - ставить 9.1.2 не мешает ничто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2008, 18:39 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Да, еще забыл: - глобальные переменные; - массивы; - из личного опыта (если кроме меня есть извращенцы, пользующиеся Embedded SQL в С) - зачем-то изменили библиотеки клиента. Теперь программу, скомпиляченную на 9.5 клиенте, только на 9.5 клиенте и можно запускать. Версия сервера значения не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2008, 18:52 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! Dimitry Sibiryakov Нет, я хочу подробного рассказа как поднималась база после выгорания 3 SCSI HDD разом. да как обычно ... просто всего было 4 диска, выгорело 3 и по счастливой случайности выгорел диск с осью и только двумя дисками с ораклом, выживший оказался с арклогами. с тех пор у меня сервера не стоят в офисе, а арклоги я забираю rsync'ом ...А. Теперь сервера стоят на Марсе, а синкишься через astral.dll? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2008, 13:34 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
к стате, Favn, а как там у дб2 с навороченостью SQL PL ? вроде язык сторед процедур появился всего 8 лет назад в 7.1 (до этого надо было внешние процедуры компилировать), не отстает ли он от МС и Оракла которые гораздо дольше развивают ? там масивы есть, рекурсия не ограничивается ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2008, 18:08 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!Favn, а как там у дб2 с навороченостью SQL PL ? вроде язык сторед процедур появился всего 8 лет назад в 7.1 (до этого надо было внешние процедуры компилировать), не отстает ли он от МС и Оракла которые гораздо дольше развивают ? там масивы есть, рекурсия не ограничивается ?"Всего" 8 лет назад - не так уж мало :) До этого он был, но генерировался в С-исходник, потом компилировался (автоматически, но не очень удобно ). Кстати, для SQL-функций и триггеров он был и до этого. Причина такого различия простая - в DB2 SQL-функции и триггеры подставляются оптимизатором in-line в запрос, их использующий, и компилируются вместе с ним, а процедуры - компилируются в момент их содания. Поэтому SQL PL в функциях и триггерах есть подмножество SQL PL для SP (inline SQL PL), и поэтому "нативный" SQL PL в SP появился позже. Сейчас есть все, хотя массивы появились только в 9.5. Рекурсия, конечно, не ограничена :) Кстати, у МС 8 лет назад, наоборот, был бедный SQL (в сравнении с тогдашним Oracle и DB2), и процедурные изыски T-SQL были нужны для его "поддержки". Сейчас процедуры/функции можно писать на чем угодно, вплоть до .Net. SP, написанные на SQL PL, хранятся в БД откомпилированными. Как я понимаю, в нынешнем виде SQL PL для SP создавался как раз для упрощения портирования с Oracle и MS, поэтому более-менее должен включать все их фичи. По крайней мере я не знаю, чего еще там может нехватать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 15:20 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
2Favn по меркам субд это совсем недавно, например наверника процедуры на С в Db2 до сих самый распростроненный способ писать сторед процедуры. посмотрел мигрейшен гвайды - рекурсия все же ограничена всего 16 вызовами, но понравилось туча эмуляции для миграции c oracle: и dual и connect by prior, даже плюсики сделали. еще вопросы, раз пошла такая пьянка: 1. массивы, что появились - можно их передавать в процедуры ? можно ли с клиента ? 2. можно ли вернуть несколько курсоров (дата сетов) клиенту, может ли клиент одновременно иметь несколько недофетченых таких курсоров ? 3. временные таблицы как mssql создаются там на ходу ? индексы, view и прочая можно навешивать ? 4. можно ли как-то отследить зависимости ? например сменить тип колонки в таблице и отследить которые процедцры теперь не будут работать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 11:03 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!2Favn по меркам субд это совсем недавно, например наверника процедуры на С в Db2 до сих самый распростроненный способ писать сторед процедуры. посмотрел мигрейшен гвайды - рекурсия все же ограничена всего 16 вызовами, но понравилось туча эмуляции для миграции c oracle: и dual и connect by prior, даже плюсики сделали. еще вопросы, раз пошла такая пьянка: 1. массивы, что появились - можно их передавать в процедуры ? можно ли с клиента ? Да 2. можно ли вернуть несколько курсоров (дата сетов) клиенту, может ли клиент одновременно иметь несколько недофетченых таких курсоров ? Да. Сколько угодно открываете курсор декларируете его или RETURN TO CALLER или RETURN TO CLIENT и оставляете открытым - все пойдет туда куда надо. 3. временные таблицы как mssql создаются там на ходу ? индексы, view и прочая можно навешивать ? Вьюхи на временные таблицы не создаются. Индексы - сколько угодно. Триггеры на временные таблицы тоже не навешиваются. 4. можно ли как-то отследить зависимости ? например сменить тип колонки в таблице и отследить которые процедцры теперь не будут работать ? Все строго и очень хорошо описано в системных вьюхах. Документация по ним весьма поная и имеется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 12:20 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!по меркам субд это совсем недавно, например наверника процедуры на С в Db2 до сих самый распростроненный способ писать сторед процедуры. посмотрел мигрейшен гвайды - рекурсия все же ограничена всего 16 вызовами 1. массивы, что появились - можно их передавать в процедуры ? можно ли с клиента ? 2. можно ли вернуть несколько курсоров (дата сетов) клиенту, может ли клиент одновременно иметь несколько недофетченых таких курсоров ? 3. временные таблицы как mssql создаются там на ходу ? индексы, view и прочая можно навешивать ? 4. можно ли как-то отследить зависимости ? например сменить тип колонки в таблице и отследить которые процедцры теперь не будут работать ?Насчет процедур на C - не знаю, в Штатах и на Коболе до сих пор пишут. Кстати - на нем можно и под DB2 писать На SQL PL языке SP можно было писать и раньше, и на нем и писали. Просто тогда они автоматом компилячились через ж... вобщем, через С, а сейчас - нормальная нативная среда с дебагером на сервере. Рекурсия - посмотрел, правда 16, промашка вышла. Я ей не пользуюсь - логичнее рекурсивные данные молотить в SQL. 1. Массивы используются как раз для SP и работы с клиентами. В полях таблиц не хранятся, но есть куча вариантов преобразований массив<->таблица как по столбцам, так и по строкам. 2. Да, да. 3. Создаются именно на ходу, индексы навешивать можно, в т.ч. кластерные. View - нельзя, да и смысла в них для временных таблиц, вне этого коннекта никому не видных, немного. При желании - можно вместо view использовать табличные функции на SQL PL. Или речь об MQT (materialized query table)? Для них view можно, но они только в Enterprise. 4. Уже ответили - полный контроль, все есть в системных view. Кстати, интересно - есть ли в МС и Оракл возможность селекта измененных запросом данных? Скажем, перечислить удаленные (вставленные, измененные) записи как-нибудь так: select F1, F2 from old table ( delete from TABLE1 where F1 > 1000 and F2 <> 0 ); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 16:03 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Favn wrote: > Кстати, интересно - есть ли в МС и Оракл возможность селекта измененных > запросом данных? > Скажем, перечислить удаленные (вставленные, измененные) записи > как-нибудь так: > select F1, F2 from old table ( delete from TABLE1 where F1 > 1000 and F2 > <> 0 ); есть. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 16:06 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnКстати, интересно - есть ли в МС и Оракл возможность селекта измененных запросом данных? Скажем, перечислить удаленные (вставленные, измененные) записи как-нибудь так: select F1, F2 from old table ( delete from TABLE1 where F1 > 1000 and F2 <> 0 ); MS SQL поддерживает кляузу OUTPUT: http://msdn2.microsoft.com/en-us/library/ms177564.aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 17:11 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
2 Favn Если нет желания читать, то в MS SQL Ваш пример будет выгляlеть так: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 17:24 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
>Кстати, интересно - есть ли в МС и Оракл возможность селекта измененных запросом данных? в оракле кажется только инсерт/апдейт одно значение возвратить может, но в коде то не проблема проселектить сначала то, что сейчас удалишь - интересней проблема "бл*, а что же мы тогда удалили и уже закомитили ?" вот тут спасает мегафича - flashback, можно запустить селект на момент до удаления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 17:44 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!но в коде то не проблема проселектить сначала то, что сейчас удалишь - интересней проблема "бл*, а что же мы тогда удалили и уже закомитили ?" вот тут спасает мегафича - flashback, можно запустить селект на момент до удаления. Гы... С таким подходом "но в коде то не проблема проселектить сначала то, что сейчас удалишь" любую мегафичу можно реализовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 17:54 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklin Гы... С таким подходом "но в коде то не проблема проселектить сначала то, что сейчас удалишь" любую мегафичу можно реализовать. ок, давай я даю код процедуры которая удаляет строки и коммится, а ты даешь код которые отгадывает, что за строки были удалены ? думаю с таким мегоподходом это плевое дела, а ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:00 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
FavnНа SQL PL языке SP можно было писать и раньше, и на нем и писали. Просто тогда они автоматом компилячились через ж... вобщем, через С, а сейчас - нормальная нативная среда с дебагером на сервере. проблема то не в компиляции, а в том что это внешняя приблуда для сервера. как я понял их нужно бэкапить руками отдельно, планы SQL запрсов компилируются намертво на момент создания процедуры, отдельные и независимые от сервера процессы, память и т.п. Favn 3. Создаются именно на ходу, индексы навешивать можно, в т.ч. кластерные. View - нельзя, да и смысла в них для временных таблиц, вне этого коннекта никому не видных, немного. При желании - можно вместо view использовать табличные функции на SQL PL. Или речь об MQT (materialized query table)? Для них view можно, но они только в Enterprise. нет, меня интересовала идиология именно времянок, похоже схожая с mssql, значит должна быть похожая проблема в том, что SQL в процедурах использует таблицы (временные), которые в системе появятся только в момент выполнения и нельзя на 100% отгадать правильные таблицы и типы колонок будут в момент исполнения. в оракле чуть другая идиология ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:00 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!ок, давай я даю код процедуры которая удаляет строки и коммится, а ты даешь код которые отгадывает, что за строки были удалены ? думаю с таким мегоподходом это плевое дела, а ? Давай... ;) Тока сначала вспомни, что в MS SQL табличные переменные не подвержены транзакциям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:02 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
pkarklin Давай... ;) Тока сначала вспомни, что в MS SQL табличные переменные не подвержены транзакциям. ах вот, что за мегаподход ... взять и дописать в мой код, ну а из другой транзакции, из другой сессии... слабо ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:12 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! wrote: > ну а из другой > транзакции, из другой сессии... слабо ;) ??? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:37 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
locky Yo.! wrote: > ну а из другой > транзакции, из другой сессии... слабо ;) ??? Posted via ActualForum NNTP Server 1.4 в оракле можно запустить CREATE TABLE AS SELECT на момент времени в прошлом (докуда UNDO хватит) с теми же предикатами, что был запущен DELETE когда-то, таким образом получить кусок таблицы, что был удален. мне разок жизнь спасло, когда я терминал перепутал ЗЫ. заглянул в оракловый мануал, оказалось и у DELETE и у INSERT/UPDATE есть returning_clause который может вернуть несколько строк ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:51 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! wrote: > в оракле можно запустить CREATE TABLE AS SELECT на момент времени в > прошлом (докуда UNDO хватит) с теми же предикатами, что был запущен > DELETE когда-то, таким образом получить кусок таблицы, что был удален. > мне разок жизнь спасло, когда я терминал перепутал "Чего только вы не придумаете, только бы дороги не ремонтировать" (С) > ЗЫ. заглянул в оракловый мануал, оказалось и у DELETE и у INSERT/UPDATE > есть returning_clause который может вернуть несколько строк ... Та вы шо? Небось - и в рекорд коллекшн можно? :) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:56 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!проблема то не в компиляции, а в том что это внешняя приблуда для сервера. как я понял их нужно бэкапить руками отдельно, планы SQL запрсов компилируются намертво на момент создания процедуры, отдельные и независимые от сервера процессы, память и т.п.Думаю, что не стоит обсуждать проблемы СУБД, решенные 8 лет назад :) Начиная с v8 в DB2 SQL PL процедуры лежат в БД (в .т.ч. в сис. таблицах) и компилируются в граф доступа к данным. Перекомпилировать можно после runstats. Относительно внешняя приблуда - процедуры на Java, например. И на С можно, для старых извращенцев. Yo.!нет, меня интересовала идиология именно времянок, похоже схожая с mssql, значит должна быть похожая проблема в том, что SQL в процедурах использует таблицы (временные), которые в системе появятся только в момент выполнения и нельзя на 100% отгадать правильные таблицы и типы колонок будут в момент исполнения. в оракле чуть другая идиология ... Отгадать нельзя, а вот задать - можно :) Опция "LIKE table-name / view-name" копирует описание нужной таблицы или "AS (fullselect) DEFINITION ONLY" - результ. таблицу запроса. Вообще, DB2 весьма строг с типизацией данных. А идеология - временную таблицу видит только ее создатель, в сис. каталоги она не заносится. Политика сохранения данных в ней при commit/rollback задается при создании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 19:26 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.!ах вот, что за мегаподход ... взять и дописать в мой код, Подход полностью аналогичен: Yo.!но в коде то не проблема проселектить сначала то, что сейчас удалишь ;) Yo.!ну а из другой транзакции, из другой сессии... слабо ;) Не, не слабо, опять же с испольованием озвученного выше мегаподхода можно как два пальца об асфальт реализовать хранение истории данных (несмотря на то, что сам MS SQL не поддерживает такого функционала, снапшоты тут не будем рассматривать) и это я успешно проделывал на одном из проектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 08:46 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
2pkarklin этот returning (OUTPUT по вашему) - обычный syntax sugar. Я не вижу координальной разницы написать селект строкой выше или returning строкой ниже ... а вот достать без подготовки одним селектом то, что было когда-то удалено вместо того, чтоб заранее включать аудит на все таблицы, что часто не реально и в большинстве случаев уже поздно, для меня выглядит более впечатляющим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 17:02 |
|
||
|
Помогите определиться
|
|||
|---|---|---|---|
|
#18+
Yo.! wrote: > этот returning (OUTPUT по вашему) - обычный syntax sugar. Я не вижу > координальной разницы написать селект строкой выше или returning строкой > ниже ... а вот достать без подготовки одним селектом то, что было Странно, а я почему то вижу.... Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 17:42 |
|
||
|
|

start [/forum/topic.php?all=1&fid=35&tid=1553136]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
101ms |
get tp. blocked users: |
1ms |
| others: | 8ms |
| total: | 183ms |

| 0 / 0 |
