Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
В DB2 for LUW varchar'ы не в отдельном сегменте. И не верится, что в MS SQL в отдельном. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 00:31 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Сорри что длинно, но много вопросов. Victor MetelitsaНакладные расходы, которые я имел в виду - это, во-первых, поддержание rollback segment'а, и во-вторых - записывание сведений блокировок прямо в страницы данных (лично я предпочитаю отдельный список и эскалацию блокировок). (Впервые слышу про эскалацию на табличное пространство). Список блокировок в памяти предпочли не вы, а IBM, вы используете то, что есть. Эскалация блокировок делает "нагрузочную кривую" шибко нелинейной для ДБ2, что не наблюдается у Оракла. Фактически у Оракла все активно изменяемые блоки с данными находятся в памяти, что нивелирует разницу в дизайне при малой транзакционной нагрузке. Подытоживая скажу, что организация блокировок дает возможность Ораклу выжить, работая медленнее из-за увеличенного i/o там, где ДБ2 станет раком из-зи нехватки памяти и экскалации блокировок. Согласен, что грязное чтение для ОЛТП будет просто панацеей в этом случае. Victor MetelitsaНапомню, что в журнале транзакций DB2 записываются данные для наката и отката. В Oracle данные для отката идут в rollback segment, но в redo log попадают все данные для наката, в том числе и наката rollback segment. Получается, что откат записывается по два раза. Оракл туда ещё много чего пишет. До тех пор, пока поток записи не превышает пропускную способность диска(-ов) для реду-логов, меня это мало заботит. Кстати, Оракл начиная с 9й версии имеет параметр, выставляющий время восстановления при сбое. То есть я знаю, что в случае чего у меня база восстановится за, скажем, 15 минут. Есть ли это в ДБ2 - пока нет. Victor MetelitsaХранение блокировки прямо в странице данных приводит к тому, что в ряде случаев её придётся записать два раза. Предположим, что блок 8К, средняя длина строки скажем 100 байт. Получаем около 80 строк на блок - это так, намёк. При изменении только одной строки в блоке, он пишется только один раз при коммите. Роллбек может потребовать прочесть измененный блок с диска, есть его уже пришлось записать (ДБ2 делает эскалацию при этих обстоятельствах) Victor Metelitsa Кстати, в ряде применений и режим грязного чтения (не путайте с фактом грязного чтения) совершенно нормален и корректен. Как я уже упомянул, это требует соотв. дизайна приложения ("заточки" под ДБ2) Victor Metelitsa Про SQL почитайте кулинарную книжку. http://ourworld.compuserve.com/homepages/Graeme_Birchall/HTM_COOK.HTM. Спасибо, интересно. Уже в фаворитах. Victor Metelitsa Но, чтобы пользоваться командой rman'а, надо понимать, что за ней стоит. Необходимо знать огромное количество подробностей, о которых я не забочусь, используя DB2. Это очень и очень сложная штука. Проблема у ДБ2 в том, что очень мало задокументированных возможностей по управлению системой. IBM хочет, что бы мы воспринимали сервер как чёрный ящик. На самом деле сложность есть и там и там, но у Оракла есть возможность что-то подправить, у ДБ2 - как повезёт. В десятом оракле RMAN настраивается системой и там действительно можно делать бакап сказав backup database Victor Metelitsa Полагаю, те динамические планы IBM, о которых говорил инструктор, это совсем не то, про что вы подумали. У меня с английским в порядке. :) Курс называется DB2 UDB Performance Workshop. Много интересного рассказали про внутреннюю кухню, про два движка: CQE (старый) и SQE (новый). Про статический план, почему он не всегда "есть хорошо" и как с ним бороться. Victor MetelitsaПро "DB2 и MS SQL Server любят фиксированную длину строк. Oracle оптимизирован для переменной" - прошу привести доказательства либо ссылку на источник. см мой ответ 2gardenman ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 00:49 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Victor MetelitsaВ DB2 for LUW varchar'ы не в отдельном сегменте. И не верится, что в MS SQL в отдельном. Это очень хорошо. Поймите, я не ругаю, я вопрошаю. Если я где заблуждаюсь - вы мне помогаете это понять. Кстати, я не смог найти имя функции, которая возвращает физический адрес строки. У Оракла это ROWID, в которой закодирован номер файла, блока, порядковый номер строки в блоке и пр. Именно это значение оракл хранит в индексе как указатель на строку. ROWID можно использовать в программах. AS/400 имеет функцию RRN (Relative Record Number). Что у LUW DB2? Кстати, такая организация (при помощи ROWID и chaining rows) позволяет Ораклу хранить строки, которые больше размера блока. AS/400 DB2 у меня отказывается так делать. Может ли LUW так делать? Должен ли я при дизайне таблицы оглядываться на такой параметр, как размер блока? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 01:23 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
>> на AS/400 VARCHAR столбцы хранятся в сегменте отдельном от столбцов >> фиксированной длины. Справедливо для 5R3. Как вывод - требуется >> дополнительная i/o операция. Кстати, LONG VARCHAR в LUW тоже хранится в одтельно, как и LOB данные. Однако разве это плохо? Я честно говоря так не считаю, потому, что I/O можно распараллелить. >Кстати, Оракл начиная с 9й версии имеет параметр, выставляющий время >восстановления при сбое. То есть я знаю, что в случае чего у меня база >восстановится за, скажем, 15 минут. Есть ли это в ДБ2 - пока нет. почитайте про параметр SOFTMAX и LOGFILSIZ, про настройку асинхронных чичтильщиков страниц. Может это и не то же самое что в Оракле, но разультат - сходный. >Кстати, какой командой можно восстановить дропнутую таблицу в ДБ2? Честно скажу что ее восстанавливают из бэкапа, и при накатке логов отменяют DROP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 11:16 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Anton - по некоторым причинам, в том числе и по лицензионным, и по ряду других, mainframe никогда не будет фигурировать в TPC. Но эти причины НИКАК не связаны с производительностью. По поводу экскалаций - смахивает на всеобщее заблуждение, что это всегда плохо. Но факт, что это надо учитывать и затачивать дизайн транзакций. Но используя эскалацию можно получить увеличение пропускной способности - раз. Во вторых, направильно привязывать память на блокировки с падением производительности - с памятью проблем давно нет, сколько надо - столько и выделим. Вопрос в производительности работы с таким кол-вом блокировок. Вот здесь, как я понимаю, фиолетово, что оракла, что db2 - блокировки надо сопровождать. И вот здесь, как раз, может помочь эскалация - когда затраты на сопровождение огромного числа блокировок начинают превышать затраты на одну блокировку (но на всю таблицу) - то это прямой выигрыш. Ораклоиды этого часто не понимают. Ну и последнее - skip_inserted/skip_deleted/evaluate_uncomitted помогают резко поднять пропускную способность не прибегая к грязному чтению (но поведение в двух случаях отличается от версионного, в одном диаметрально противоположно, в другом зависит, в третьем совпадает) Но все равно - про mainframe вы здорово загнули, я только вернулся от заказчика, который купил z9 ДО его анонса, и прочее, объемы транзакций огромные, и вся отказоустойчивость реализована опираясь на аппаратные возможности - никаких backup/restore нет, все аппаратно. И идет анализ на внедрение sysplex - ну это отдельная песня, ни с чем ее сравнить не возможно. Ну можно сказать так - оракловый RAC есть жалкое софтверное подобие хардверной реализации sysplex, но опять таки не корректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 11:36 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
таки ввязался во флейм.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 11:36 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
ggvИ вот здесь, как раз, может помочь эскалация - когда затраты на сопровождение огромного числа блокировок начинают превышать затраты на одну блокировку (но на всю таблицу) - то это прямой выигрыш. Ораклоиды этого часто не понимают. еще более странно, что многие Бимеры тоже часто этого не понимают ;) Lock escalation. For many tablespaces, it’s also probably advisable to turn off lock escalation. SAP’s cluster table interface can read cluster tables without causing a problem with lock escalation; however, with other ERPs, lock escalation is one of the biggest contributors to poor performance . http://www.db2mag.com/db_area/archives/1999/q2/99sp_yevich.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 13:08 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
yo, вы с этой ссылкой носитесь, как... Не буду продолжать из врожденной вежливости :) Читайте и другую доку. Всю ее. И сами думайте. Если стоимость обслуживания огромного кол-ва блокировок становится дороже, чем проследовательное блокирование таблицы транзакциями - приложение выигрывает. Вот для этого и был это механизм создан. Кстати, это в доке тоже написано. Так чта эскалация не есть однозначное зло, а механизм. А при наличии механизма важно умение его использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:16 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
кста, с 1999 года много версий db2 сменилось. А последний год, в силу очевидных обстоятельств, очень многое в db2 было изменено как раз для SAP специально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:17 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
сразу же вопрос в по теме db2-шникам - коллеги, кто еще, кроме Yo!, имел проблему падения производительности приложения из-за эскалации блокировок? И если можно, краткую характеристику приложения, ситуации, и как боролись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:20 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
блокировки работуют если их отключить то работыет быстрее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:30 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
ggvкстати, коллеги DB2-шники, если оставить в стороне психическое состояние архитектора, спроектировавшего систему с 15-минутными транзакциями - есть ли у кого опыт работы с системами, где время одной транзакции было большим, сравнимым? То есть - а есть ли такие системы? Я, конечно, понимаю, что еще "мал и глуп, и не видал больших велосипедов", но таких систем я не видел. Может их и нету? Я делал такую на Oracle (blame it on me). Достаточно долгий диалог с клиентом (предприятия), воплощение в жизнь его пожеланий было раелизовано в виде мастера, который тащил 1 транзакцию с кучей сэйвпоинтов. Жило все за счет небольшого количества клиентов (рабочих мест операторов). Удобно - не то слово, можем вернуться куда хотим. Если на каком-то шаге была локировка чего-то критичного - то остальные курили. Но курили только те, кому был нужен дефицитный ресурс, то есть к примеру все работники филиала ждали пока закоммитится (или откатится) открытие нового счета. Остальные работали, а уж отчетам было раздолье, они не знали про эти заморочки. Так вот, я подозреваю что на DB2 оно бы вообще не жило, или как минимум пришлось бы над всем этим дополнительно думать. Хитом в этой системе (blame it on me again!) была одна операция, которая шла примерно час. Главное было не переполнить ROLLBACK SEGMENT у сервера. Ежели что-то нехорошее все-таки происходило, то сервер выполнял откат еще с полчаса. Зато надежность в части непротиворечивости и пр. у данных была просто опупенная, да и пользователь мог себе позволить любое раздолбайство :-) Это многое окупало. Больше так не буду, честно, уж тем более на UDB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:33 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
ggv Если стоимость обслуживания огромного кол-ва блокировок становится дороже, чем проследовательное блокирование таблицы транзакциями - приложение выигрывает. Вот для этого и был это механизм создан. ерунда, механизм создан, чтоб спасаться от ситуации когда блокировки кушают больше памяти чем есть физически. и только для этого, т.к. другой пользы от механизма нет, конкурентный доступ имеет гораздо большее значение для системы чем "быстрое" пропихивание одной транзакции за счет приостановки всех остальных. на счет длинных транзакций: /topic/94928&pg=-1&hl=#704021 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:55 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
еще было бы интерсно услышать что изменилось в дб2 в механизме эскалации с 99-года ? (это я без сарказма :) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 14:57 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
2 Astron На самом деле в том что тут порассказали хвастаться нечем. Удивляюсь, как может открытие счета быть таким долгим?... Заказчик наверное был очень доволен? Попобуйте на досуге сделать что-нить подобное: тынц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:03 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Yo - ваше предположение о назначении механизма эскалации несостоятельно и противоречит документации. А так же здравому смыслу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:05 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Astron - да уж, интересно. А собрать все сведения на клиенте и потом совершить транзакцию со всеми шагами? ИМХО так в большинстве случаев и делают, нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:07 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Yo - с 99 года сильно изменилось поведения миеханизма изоляций, появились skip inserted/deleted and evaluate_uncomited. Это сильно влияет на поведение блокировок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:08 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Да достаточно подумать логически - при наличии таблицы в X000000 строк, при наличии Y конкурентных транзакций, при наличии потребности заблокировать 90% строк --- список блокировок поместится в память, не проблема, но сопровождение такого списка может быть дороже, чем Y блокировок будут сериализованы по доступу к таблице - последовательно получат ОДНУ блокировку на всю таблицу, быстро отработают свою транзакцию, и снимут блокировку. То есть если время на обслуживание списка блокировок по сравнению со временем отработки транзакции слишком велико - эскалация прямой выигрыш. А сопровождения списка блокировок нужно везде, где они есть - все равно в конечном итоге они в памяти, даже если и в строках данных (что только усугубляет) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:13 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
ggvYo - ваше предположение о назначении механизма эскалации несостоятельно и противоречит документации. А так же здравому смыслу. т.е. отказ от конкурентного доступа и выстраивание всех в очередь более здравая мысль ? ggvYo - с 99 года сильно изменилось поведения миеханизма изоляций, появились skip inserted/deleted and evaluate_uncomited. Это сильно влияет на поведение блокировок. вы хотите сказать что SAP использует эти костыли, чтоб решить проблему эскалации ?? сумневаюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:15 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Yo - на первый вопрос - да На второй вопрос - вы видимо не вкурсе о партнерстве SAP & IBM, и о том что эти "костыли" появились в рамках этого партнерства, хотя и дока и сайт IBM пестрят сообщениями. Об этом партнерстве. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:16 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
автор список блокировок поместится в память, не проблема, но сопровождение такого списка может быть дороже, чем Y блокировок будут сериализованы по доступу к таблице - последовательно получат ОДНУ блокировку на всю таблицу, быстро отработают свою транзакцию, и снимут блокировку. не вижу связи между "удачной" реализацией блокировок в дб2 в виде списка которым потом тяжело управлять и конкурентным доступом :( ggvYo - на первый вопрос - да На второй вопрос - вы видимо не вкурсе о партнерстве SAP & IBM, и о том что эти "костыли" появились в рамках этого партнерства, хотя и дока и сайт IBM пестрят сообщениями. Об этом партнерстве. а можно урл про исторические корни костылей :) ? может там заодно будут пояснения причин их происхожения ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:23 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
Yo - ну не видите - так не видите а как же - читайте overview к версии, когда каждая из этих фич появилась, фикспаки 8 и 9, там в what's new все это написано, а так же статьи на developerworks, там тоже все разжевано. Извиняйте, точных урлов нет - поиск рулит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:26 |
|
||
|
Народ подскажите в чем +/- DB2 по сравнению с другими СУБД, напр. Oracle?
|
|||
|---|---|---|---|
|
#18+
кстати, про количетсво транзакций, список блокировок, 90%, и количество строк - это был вольный пересказ документации. Так что ваше невидиние связи не отменяет факта ну никоим образом. Другое дело, что ваша святая вера в зловредность эскалации, ваше знамя, которым вы машете по делу и не всегда, наткнулись на факт, на нечто - ну неприятно, бывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2005, 15:29 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=33419819&tid=1605398]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 270ms |
| total: | 398ms |

| 0 / 0 |
