powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / DB2 Express-C против - MS SQL Server 2000 -???
25 сообщений из 178, страница 4 из 8
DB2 Express-C против - MS SQL Server 2000 -???
    #33592848
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
что-то мне сдается, что уважаемый gybson не имеет понятия, как в нормальных услорвиях происходит доступ к промышленным системам, в том числе и по вопросу инсталляции, upgrade, и так далее.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33592853
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
К тому, что написал Viktor, добавлю - даже очень тщательно написанный код требует прохождения вывереной бизнес процедуры прежде чем попадет в производство.
Это целый регламент , который как раз и разрабатывался для исключения исключительных случаев.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33592859
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЕщё хочу заметить, что MSSQL не может передавать коннект в ХП. То есть из ХП надо обратно соединятся с базой, что бы там что-то сделать

мда...
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33592970
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1024 авторЕщё хочу заметить, что MSSQL не может передавать коннект в ХП. То есть из ХП надо обратно соединятся с базой, что бы там что-то сделать

мда...
Я так полагаю товарищ имелл в виду ВНЕШНИЕ хп.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593270
gybson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть набор системных внешних процедур, в которых до сих пор иногда находят баги.

А в остальном разумеется, не было еще никогда такого, чтобы баг пролез в рабочую систему, что вы.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593381
pavelvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor MetelitsaДля потенциально подозрительных SP и UDF "на C" DB2 имеет ключевое слово FENCED. Огораживаем забором, короче. В случае чего упадёт только один коннект.Во, блин. Думал они вообще в отдельном процессе исполняются...
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593691
Фотография Anton Demidov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pavelvp Victor MetelitsaДля потенциально подозрительных SP и UDF "на C" DB2 имеет ключевое слово FENCED. Огораживаем забором, короче. В случае чего упадёт только один коннект.Во, блин. Думал они вообще в отдельном процессе исполняются...
Это у Оракла
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593698
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда внешняя процедура NOT FENCED, то она исполняется в адресном пространстве сервера и примерно в 2 раза быстрее.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593718
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gardenmanКогда внешняя процедура NOT FENCED, то она исполняется в адресном пространстве сервера и примерно в 2 раза быстрее.

NOT FENCED быстрее, но может завалить весь сервер ?
а теперь они в бэкапе участвуют или и теперь это отдельно осью нужно бэкапить ?
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593749
Фотография Anton Demidov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor MetelitsaМожно подробностей? Что такое "оптимизированный код", почему он в Oracle "оптимизированный", а в DB2/400 нет?
Про Оракл читаем здесь . PLSQL_OPTIMIZE_LEVEL initialization parameter. Для тех, кто в танке проводим аналогию с оптимизатором в С-компиляторе.
Про оптимизацию (точнее её отсутствие) в SQL Stored Procedures нам рассказывал в октябре прошлого года Daniel Cruikshank
в Rochester-e, MN. Он же сказал, что ХП написанная на языке третьего поколения (C, COBOL, ...) скорее всего будет работать быстрее написанной на SQL PL, так как накакой оптимизации генерированного С кода они в iSeries 5R3 не производят. У меня не было возможности проверить его слова, но он, что называется, величием опыта давит. Если ты ему не веришь - перехвати герерируемый С код и посмотри, что же там на самом деле.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593805
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor Metelitsa ВыбегаллоНет, типа "мы проапгрейдили AIX на QA боксе и теперь я не могу перекомпилировать процедуру и развернуть ее продакшене".
Если одна и та же DB2 (одинаковые бинарники) работает там и тут, что за проблема с компилятором? Странно мне такое слышать. Я из под Windows XP вполне могу делать программы для Windows 95.

Вы никогда не сталкивались с изменением поведения компиляторов при апгрейде ОС ? Как говорил Остап, " с таким счастьем - и на свободе".
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593815
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggvВыбегалло - ну вы хоть чушь не порите по вопросам, которые не входят в вашу компетенцию.
Statis SQL и packages как раз появились в давние времена, когда и речи не могло быть о наличии никакого компилятора на production server, это и было главным условием возникновения этих вещей. Со временем добавились SP.
И геммора небыло , правда, поскольку объектный файл не являлся составляющей базы, то использовались другие возможности (ОС) по его backup/restore и переносам.
Так пукнуть в лужу....

Гемор заключается в
а) необходимости иметь идентичный сервер на идентичной ос для компиляции процедур
б) необходимости тянуть с собой все dependancies для скомпилированной процедуры.
Вы с этим не согласны, или это для вас не гимор ? Сколько понадобится машин для тестирования миграции на новую версию ОС ?
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593929
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anton Demidov Victor MetelitsaМожно подробностей? Что такое "оптимизированный код", почему он в Oracle "оптимизированный", а в DB2/400 нет?
Про Оракл читаем здесь . PLSQL_OPTIMIZE_LEVEL initialization parameter. Для тех, кто в танке проводим аналогию с оптимизатором в С-компиляторе.
Про оптимизацию (точнее её отсутствие) в SQL Stored Procedures нам рассказывал в октябре прошлого года Daniel Cruikshank
в Rochester-e, MN. Он же сказал, что ХП написанная на языке третьего поколения (C, COBOL, ...) скорее всего будет работать быстрее написанной на SQL PL, так как накакой оптимизации генерированного С кода они в iSeries 5R3 не производят. У меня не было возможности проверить его слова, но он, что называется, величием опыта давит. Если ты ему не веришь - перехвати герерируемый С код и посмотри, что же там на самом деле.
Для меня это просто не имеет значения. Во-первых, неизвестно, будет ли "оптимизированный" код Oracle быстрее "неоптимизированного" кода DB2/400. Во-вторых, для тех исходников систем на Oracle, что я видел, глубоко сомневаюсь, чтобы те "оптимизации" дали прирост хоть на процент. В третьих, у нас нет AS/400, и посмотреть генерируемый на той системе (которая имеет довольно мало общего с DB2 for LUW) нет возможности, не говоря о желании. Кстати, на SQL PL у DB2 for LUW кое-какие оптимизации проводятся, но, честно говоря, я не знаю, стоило ли им утруждаться.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593934
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pavelvp Victor MetelitsaДля потенциально подозрительных SP и UDF "на C" DB2 имеет ключевое слово FENCED. Огораживаем забором, короче. В случае чего упадёт только один коннект.Во, блин. Думал они вообще в отдельном процессе исполняются...
Когда fenced, то да. Процессы называются db2fmp.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593936
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! gardenmanКогда внешняя процедура NOT FENCED, то она исполняется в адресном пространстве сервера и примерно в 2 раза быстрее.

NOT FENCED быстрее, но может завалить весь сервер ?
а теперь они в бэкапе участвуют или и теперь это отдельно осью нужно бэкапить ?

Может завалить, да. Бекапить надо отдельно.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593938
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбегалло Victor Metelitsa ВыбегаллоНет, типа "мы проапгрейдили AIX на QA боксе и теперь я не могу перекомпилировать процедуру и развернуть ее продакшене".
Если одна и та же DB2 (одинаковые бинарники) работает там и тут, что за проблема с компилятором? Странно мне такое слышать. Я из под Windows XP вполне могу делать программы для Windows 95.

Вы никогда не сталкивались с изменением поведения компиляторов при апгрейде ОС ? Как говорил Остап, " с таким счастьем - и на свободе".
И с чистой совестью. Версия компилятора имеет значение, но причём тут собственно ОС (если игнорировать факт, что некоторые ОС поставляются с компиляторами)?
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593939
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбегалло
Гемор заключается в
а) необходимости иметь идентичный сервер на идентичной ос для компиляции процедур
б) необходимости тянуть с собой все dependancies для скомпилированной процедуры.
Вы с этим не согласны, или это для вас не гимор ? Сколько понадобится машин для тестирования миграции на новую версию ОС ?

Да ладно пугать-то. Шла бы речь о каком-то закрученном GUI-приложении, это одно дело, но SP и UDF обычно используют очень ограниченный набор чего-то внешнего. Строковые функции да кое-что из самой DB2.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593981
Фотография Anton Demidov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor Metelitsa Anton Demidov Victor MetelitsaМожно подробностей? Что такое "оптимизированный код", почему он в Oracle "оптимизированный", а в DB2/400 нет?
Про Оракл читаем здесь . PLSQL_OPTIMIZE_LEVEL initialization parameter. ...
Для меня это просто не имеет значения. Ну а зачем тогда спрашивать? Попонтоваться? Пальцы растопырить?

Victor MetelitsaВо-первых, неизвестно, будет ли "оптимизированный" код Oracle быстрее "неоптимизированного" кода DB2/400. Во-вторых, для тех исходников систем на Oracle, что я видел, глубоко сомневаюсь, чтобы те "оптимизации" дали прирост хоть на процент. В третьих, у нас нет AS/400, и посмотреть генерируемый на той системе (которая имеет довольно мало общего с DB2 for LUW) нет возможности, не говоря о желании. спорьте о вкусе устриц, что вы никогда в жизни не пробовали. Ни Оракла, ни DB2/400 не видел, а зачем-то споришь. Ещё и генерируемый код перехватить не можешь.

Victor MetelitsaКстати, на SQL PL у DB2 for LUW кое-какие оптимизации проводятся, но, честно говоря, я не знаю, стоило ли им утруждаться.Факты, друг мой, факты где?
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33593998
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anton Demidov Victor Metelitsa Anton Demidov Victor MetelitsaМожно подробностей? Что такое "оптимизированный код", почему он в Oracle "оптимизированный", а в DB2/400 нет?
Про Оракл читаем здесь . PLSQL_OPTIMIZE_LEVEL initialization parameter. ...
Для меня это просто не имеет значения.
Ну а зачем тогда спрашивать? Попонтоваться? Пальцы растопырить?

Был слабый шанс, что что-то полезное я всё-таки узнаю. Как-никак, с Oracle приходится иметь дело, а всех тонкостей не знаю. Главная причина, почему это оказалось неинтересно, была упомянута в "во-вторых". Я не верю, что тот параметр нам хоть на копейку помог бы, даже будь у нас 10g.

Но для чего вы вообще заговорили про AS/400 (она же iSeries)? Какое это могло иметь отношение к обсуждаемой теме (DB2 Express-C против - MS SQL Server 2000 )? Ведь, в отличие от DB2 for LUW, MS SQL, Oracle, Informix, Sybase, Firebird etc эта система, мягко говоря, не для всех. Попонтоваться и растопырить пальцы?


Victor MetelitsaВо-первых, неизвестно, будет ли "оптимизированный" код Oracle быстрее "неоптимизированного" кода DB2/400. Во-вторых, для тех исходников систем на Oracle, что я видел, глубоко сомневаюсь, чтобы те "оптимизации" дали прирост хоть на процент. В третьих, у нас нет AS/400, и посмотреть генерируемый на той системе (которая имеет довольно мало общего с DB2 for LUW) нет возможности, не говоря о желании.
спорьте о вкусе устриц, что вы никогда в жизни не пробовали. Ни Оракла, ни DB2/400 не видел, а зачем-то споришь. Ещё и генерируемый код перехватить не можешь.


Как это я Oracle не видел, когда я администрирую пару систем и прямо только что сообщил, что просматривал исходники на Oracle? Масса кода на PL/SQL. Правда, 8.1.7, но у одной скоро будет переезд на 9ir2? И как я могу перехватить генерируемый AS/400 код, если у нас AS/400 нет? С вами точно всё в порядке?


Victor MetelitsaКстати, на SQL PL у DB2 for LUW кое-какие оптимизации проводятся, но, честно говоря, я не знаю, стоило ли им утруждаться.Факты, друг мой, факты где?
Какие факты? Что проводятся какие-то оптимизации? Вы действительно хотите получить от меня ссылку на статью на developerworks, или на самом деле вам это неинтересно?
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33594051
Фотография Anton Demidov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor MetelitsaБыл слабый шанс, что что-то полезное я всё-таки узнаю. Как-никак, с Oracle приходится иметь дело, а всех тонкостей не знаю. Главная причина, почему это оказалось неинтересно, была упомянута в "во-вторых". Я не верю, что тот параметр нам хоть на копейку помог бы, даже будь у нас 10g.
Верить не надо - надо самому проверять и тестировать. И именно на 10g - на девятке его нет. Victor MetelitsaНо для чего вы вообще заговорили про AS/400 (она же iSeries)? Не я первый ушёл от основной темы топика. С другой стороны это то, что есть меня из DB2 (ну ещё DB2 7.1 for z/OS, но похоже, что я её знаю не больше, чем ты Оракл)
Victor MetelitsaИ как я могу перехватить генерируемый AS/400 код, если у нас AS/400 нет? Я имел в виду просмотр генерируемого кода на вашей системе. И, в общем говоря, это хорошо, что у вас AS/400 нет - врагу не пожелаешь.
Victor MetelitsaКакие факты? Что проводятся какие-то оптимизации? Вы действительно хотите получить от меня ссылку на статью на developerworks, или на самом деле вам это неинтересно? Такие вещи указываются в документации. Я же привёл ссылку по Ораклу. Мне действительно было бы интересно и приятно увидеть, что DB2 for LUW работает в этом месте лучше iSeries. У меня тонны кода на Коболе и у меня, как у заядлого PL/SQL-щика, руки чешутся улучшить его быстродействие (за счёт лучшего использования SQL) и удобство поддержки (меньший объём кода) за счёт SQL PL, но пока ещё он очень "сырой" продукт.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33594858
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Загрузке ЦПУ далеко до 100% => Производительность привязана к IO => Как я понимаю, надо улучшать запросы.

А что написано про PLSQL_OPTIMIZE_LEVEL? документация 10gPL/SQL performance is improved across the board. Most improvements are automatic, with no action required from you. Global optimization of PL/SQL code is controlled by the PLSQL_OPTIMIZE_LEVEL initialization parameter. The default optimization level improves performance for a broad range of PL/SQL operations. Most users should never need to change the default optimization level.

Performance improvements include better integer performance, reuse of expression values, simplification of branching code, better performance for some library calls, and elimination of unreachable code.

Ни на копейку не поверю, что это как-то ускорит запросы. Особенно если люди принципиально отказываются использовать global temporary tables для временных данных и пользуются обычными.

2. DB2 для мэйнфреймов, DB2/400 и DB2 for LUW - это такие разные вещи, что лучше бы IBM их назвала DB2, DB3 и DB4 соответственно. Мы сейчас говорили бы об DB4 Express-C, и DB3 просто не всплыла бы в обсуждении, как и IMS (DB1?) ;-).

По моему мнению, Oracle или, скажем, MySQL, в этой теме если и не онтопик, то близко к нему, а вот AS/400 злостный оффтопик. Ведь речь идет о выборе для "обычных" людей, работающих с "обычными" x86-серверами.

3. У меня 8.1 уже нет, только 8.2, и C-код не генерируется.

4. Не могу сказать, что по той ораклиной ссылке много информации.

Я считаю, что к статьям, которые писали разработчики, можно относиться как к документации. Но прямо сейчас, к сожалению, "The IBM developerWorks Web site is currently under maintenance.".
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33595135
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0501rielau/index.html
Serge Rielau, Senior Software Developer, IBM
SQL PL tuning in the PVM

Gustavo Arocena, the architect of SQL Procedure, published SQL Procedures Performance: Hints and Tips in 2003. Since then, much has changed. Instead of cross-compiling SQL Procedures to C with embedded SQL, the DB2 V8.2 natively compiles and executes SQL Procedures using its PVM. In the process, some of the hints Arocena describes have found their way into the fledgling PVM optimizer. As you may have seen in the screenshots of the previous examples, some statements have no costs assigned to them. This is not because they are free, but because the statements either get combined with other statements in the PVM optimizer, or because the PVM can execute the SQL natively. In DB2 V8.2 PVM can, among other things, do the following:

* Perform most straight variable assignments
* Do very basic math, such as loop increments
* Combine chains of SET statements into a single VALUES INTO statement
* Rewrite CASE and IF THEN ELSE statements with embedded SET statements into CASE expressions
* Evaluate basic conditions such as “a<b”
* Pre-compute CASE condition and IF THEN ELSE conditions and jump into the right branch right away

The purpose of these optimizations is to avoid invocation of the regular SQL runtime interpreter wherever possible to shorten the code path. PVM is still young, but it in general outperforms SQL Procedures compiled prior to V8.2 primarily because of the improvements shown above.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33595168
Фотография Anton Demidov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Victor, это как раз то, что меня интересовало. Похоже, что IBM движется в том же направлении, что и Оракл в вопросах развития встроенного языка программирования. Это не может не радовать.

По поводу оптимизации PLSQL: помимо указанной в приведённом отрывке оптимизации "не-SQL" кода, новый компилятор использует по возможности bulk- операции в SQL. Этому нет аналога в DB2 и DB4 (AS/400 и DB2 zOS). Не знаю насчет DB2 LUW.
Вкратце, это возможнось работы с массивами данных в SQL, например экономится время на фетчах для селектов. Можно вставить массив в таблицу ОДНОЙ операцией.
Код: plaintext
1.
2.
--
Антон
Per rectum ad astrum
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33595212
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оригинальная DB2 появилась на мэйнфреймах, а вот что появилось раньше - AS/400 или DB2 на OS/2, я не в курсе (и, честно говоря, заниматься исследованиями не хочется). Когда я получил сидюк от знакомого, в его конторе AS/400 уже стояла, поэтому условно обозначил DB2/400 как DB3 и DB2 Common Server (превратившийся в DB2 for LUW) как DB4 ;-).

Что касается bulk operations, то, во-первых, в SQL PL у DB4 ( ;- ) ) нет массивов. Во-вторых, я помню "их" утверждение, что цикл FOR на DB4 оптимизируется целиком, как единое выражение, а не процедурный цикл. В-третьих, здесь я ещё не говорил, но вообще я против хранимых процедур на DB4; считаю, что её SQL достаточно богат, чтобы во многих случаях обходиться вообще без процедурного языка. За 10 лет я написал всего около десятка SP. Теперь возможности SQL ещё усилились, благодаря SELECT FROM UPDATE/INSERT/DELETE.
...
Рейтинг: 0 / 0
DB2 Express-C против - MS SQL Server 2000 -???
    #33595289
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про FOR я пока нашёл бумагу здесь: http://www.cs.ubc.ca/local/reading/proceedings/cascon96/pdf/fuh.pdf
но я читал про это не здесь, а из какого-то источника типа developerworks, т.е. это должно быть уже реализовано в DB2 for LUW.
...
Рейтинг: 0 / 0
25 сообщений из 178, страница 4 из 8
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / DB2 Express-C против - MS SQL Server 2000 -???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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