|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
Все хорошо, вот только почему то люди на соседнем форуме, частенько поднимают тему типа "не поднимается Oracle после отключения питания" Почему интересно, если все так шоколадно. Больше одного стендбая DB2 не умеет (а так уж ли надо ?) Чтение со стендбая это хорошо, но я специально подчеркнул, что в плане защиты от дизастеров ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 10:23 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crash оракл не менее автоматически сделает crash recovery откроет бд, запустит юзеров и в фоне будет вычищать датафайлы откатывая незавершенные транзакции. т.е. быстрей чем дб2 востановит работоспособность. Не всегда, мне не один раз приходилось поднимать oracle датафайлы из offline накатывая логи вручную. про ДБ2 не скажу, а Informix не откроет базу для юзеров пока полностью не выполнит crash recovery. Оракл выполняет crash recovery быстрее, но иногда лажается. Informix делает это дольше, но надежнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 11:16 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat-Оракл выполняет crash recovery быстрее, но иногда лажается. Informix делает это дольше, но надежнее. Информикс тоже лажается (я сторонник объективности :) Конечно же, сильно зависит от условий, версии, уровня администрирования и платформы. Я несколько раз уже описывал свои наблюдения за несколькими сотнями инстансов с одной и той же прикладной системой, но в тяжелых условиях эксплуатации (интел платформа и винда, отсутствие стабильного энергопитания в регионах, частое отсутствие упсов, слабое или отсутствующее администрирование и т.п.). Да, в 99-и случаях из 100 (а может и в 999 из 1000) Информикс корректно обработает аварийное выключение компа, тем не менее, обычно несколько раз в год приходилось разбирать ситуации, когда сервер не мог накатить транзакции из лога и fast recovery не мог выполниться. Руками самому воспроизвести это никогда не получалось :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 12:20 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
vasilisonstat-Оракл выполняет crash recovery быстрее, но иногда лажается. Informix делает это дольше, но надежнее. Информикс тоже лажается (я сторонник объективности :) Конечно же, сильно зависит от условий, версии, уровня администрирования и платформы. Я несколько раз уже описывал свои наблюдения за несколькими сотнями инстансов с одной и той же прикладной системой, но в тяжелых условиях эксплуатации (интел платформа и винда, отсутствие стабильного энергопитания в регионах, частое отсутствие упсов, слабое или отсутствующее администрирование и т.п.). Да, в 99-и случаях из 100 (а может и в 999 из 1000) Информикс корректно обработает аварийное выключение компа, тем не менее, обычно несколько раз в год приходилось разбирать ситуации, когда сервер не мог накатить транзакции из лога и fast recovery не мог выполниться. Руками самому воспроизвести это никогда не получалось :) Это и понятно, база наверное была в bufferеd log, и документация об этом кажись( насколько я помню) предупреждает, что могут быть неприятные моменты с crash recovery. Если база в unbeffered log, то таких ситуаций я не видел, и вероятность их возникновения ниже, по понятным ( архитектурным) причинам. Если быть объективным то недостаток информикса в том, что только логическими журналами ситуацию не исправишь, нужно ресторить и даже не чанк , а дбспейс польностью + журналы или вообще всю базу. p.s. За надежность всегда нужно платить, как правило производительностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 12:47 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
mitekВсе хорошо, вот только почему то люди на соседнем форуме, частенько поднимают тему типа "не поднимается Oracle после отключения питания" Почему интересно, если все так шоколадно. а чего удивительного ? раз crash recovery не смогло поднять значит у них после отключении питания поврежденные блоки в самом датафайле появились. тут накатом лога не обойтись, блоки из бэкапа придется восстанавливать, что опять же в оракле лучше сделано. onstat- Не всегда, мне не один раз приходилось поднимать oracle датафайлы из offline накатывая логи вручную. вы утверждаете что у оракла при целых датафайлах есть баг при котором он забывает "recover database" запустить или у вас все таки посложней ситуации были ;) ? у все этих субд есть лог транзакций, так что у всех принцип одинаков, просто у оракла еще фича с запуском базы и ролбека транзакций в фоне за счет версионности. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 15:17 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crash onstat- Не всегда, мне не один раз приходилось поднимать oracle датафайлы из offline накатывая логи вручную. вы утверждаете что у оракла при целых датафайлах есть баг при котором он забывает "recover database" запустить или у вас все таки посложней ситуации были ;) ? Аж на расссс, одна из причин( самая простая и даже не баг) oracle не знает как достать журналы которые уже сбекаплены и удалены rman-ом. db2crash у все этих субд есть лог транзакций, так что у всех принцип одинаков, просто у оракла еще фича с запуском базы и ролбека транзакций в фоне за счет версионности. Лучше или хуже, это вопрос субъктивный, у вас есть опыт работы с 2 разными СУБД , что бы сравнивать? ИМХО версионность тут не причем. Informix в режиме unbuffered log мне не приходилось восстанавливать ниразу. А в Oracle у меня падали и датафайлы и контролфайлы. По каким причинам я не знаю ( это баг версии или фича в логике крешрековери), но поупражняться в востановлении либо логами либо с бэкапа мне приходилось. Контролфайлы ( на 9.2.06) падали даже без аварийного выключения питания, в ОС что то непонятное произошло. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 16:12 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat- Аж на расссс, одна из причин( самая простая и даже не баг) oracle не знает как достать журналы которые уже сбекаплены и удалены rman-ом. а что информикс в таком случае сам перематывает ленту и с нее достает лог ? onstat- Лучше или хуже, это вопрос субъктивный, у вас есть опыт работы с 2 разными СУБД , что бы сравнивать? ИМХО версионность тут не причем. oracle может пускать пользователей за счет того, что закомиченные версии строк затертые в датафайле вырублеными транзакциями можно читать из UNDO. имхо много опыта не нужно, чтоб что в информикс UNDO нет. onstat-Informix в режиме unbuffered log мне не приходилось восстанавливать ниразу. а у меня краш рековери всегда срабатывал ... onstat- Контролфайлы ( на 9.2.06) падали даже без аварийного выключения питания, в ОС что то непонятное произошло. а у информикса при повреждении файлов бд по вине ОС они сами выпрыгивают из бэкапа ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 17:26 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crashonstat- Аж на расссс, одна из причин( самая простая и даже не баг) oracle не знает как достать журналы которые уже сбекаплены и удалены rman-ом. а что информикс в таком случае сам перематывает ленту и с нее достает лог ? Informix не нуждается в заархивированных журналах для крешрековери. db2crash onstat- Лучше или хуже, это вопрос субъктивный, у вас есть опыт работы с 2 разными СУБД , что бы сравнивать? ИМХО версионность тут не причем. oracle может пускать пользователей за счет того, что закомиченные версии строк затертые в датафайле вырублеными транзакциями можно читать из UNDO. имхо много опыта не нужно, чтоб что в информикс UNDO нет. Informix имеет совсем другой механизм получения таких страниц. физический журнал называется. UNDO ему не нужен. db2crash onstat-Informix в режиме unbuffered log мне не приходилось восстанавливать ниразу. а у меня краш рековери всегда срабатывал ... Значит нам повезло, мне с informix, Вас с oracle на этом основании невозможно обоснованно доказать того что кто то из них нажедней. Учитывая отсутствие у Вас элементарных знаний об архитектуре Infomix, спорить с Вами на эту тему - зря тратить время. Что касается oracle, будучи объективным :), то основаная его солома, которую он себе подкладывает в том, что дбврайтер практически никогда не делает мультиблочную запись, потому что вынужден писать на диск в порядке SCN, а не в порядке физического расположения блоков в файле. Это его плата производительностью за крешрековери. У каждой СУБД она своя. db2crash onstat- Контролфайлы ( на 9.2.06) падали даже без аварийного выключения питания, в ОС что то непонятное произошло. а у информикса при повреждении файлов бд по вине ОС они сами выпрыгивают из бэкапа ? Нет конечно, в информикс нет контролфайлов, и соотвественно выпрыгивать они отуда не могут и пересоздавать их не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 18:43 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat- Informix не нуждается в заархивированных журналах для крешрековери. а в заархивированых logical logs он нуждается ? в чем принципиальное отличие от оракловых арклогов от logical-log backups ? onstat-Informix имеет совсем другой механизм получения таких страниц. физический журнал называется. UNDO ему не нужен. нет никакого другого механизма есть банальный Write ahead log, с помощью этого лога на последней стадии рекавери откатывает незавершенные транзакции, пользователи информикса в это время курят. в оракле на этой стадии уже работают, а незавершенные транзакции откатываются в фоне, пока идет этот процесс пользователи видят последние закомиченые данные из UNDO, аналога которому в информиксе нет. onstat- Нет конечно, в информикс нет контролфайлов, и соотвественно выпрыгивать они отуда не могут и пересоздавать их не нужно. ну тады с нетерпением ждем пояснений, чем oncfg_servername.servernum принципиально отличается от ораклового контрол-файла и почему вы решили, что oncfg_servername.servernum не нужен при рековери ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 20:17 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crashonstat- Informix не нуждается в заархивированных журналах для крешрековери. а в заархивированых logical logs он нуждается ? в чем принципиальное отличие от оракловых арклогов от logical-log backups ? Принипиальных отличий в логах нет, есть отличия в архитектуре сервера, одной из которых есть отсутствие UNDO. db2crash onstat-Informix имеет совсем другой механизм получения таких страниц. физический журнал называется. UNDO ему не нужен. нет никакого другого механизма есть банальный Write ahead log, с помощью этого лога на последней стадии рекавери откатывает незавершенные транзакции, Почитайте, что происходит на первой. Это очень важно с точки зрения понимания как происходит fast recovery, и почему вероятность появления битых страниц после падения OS + informix снижается в режиме unbufferd log. Очень хорошо что вы начали читать документацию informix :). db2crash пользователи информикса в это время курят. Я этого не скрывал. db2crash в оракле на этой стадии уже работают, а незавершенные транзакции откатываются в фоне, пока идет этот процесс пользователи видят последние закомиченые данные из UNDO, аналога которому в информиксе нет. Даже те кто делают select for update ? Если это действительно так, я не знаю, то это не крешрековери , а реклама шелковистых волос, как любит говорить Yo! Если select for update выполнить нельзя, то не нужно говорить о востановлении полнофункциональной работы во время фонового наката логов. Давайте будем объективными. db2crash onstat- Нет конечно, в информикс нет контролфайлов, и соотвественно выпрыгивать они отуда не могут и пересоздавать их не нужно. ну тады с нетерпением ждем пояснений, чем servername.servernum принципиально отличается от ораклового контрол-файла и почему вы решили, что oncfg_servername.servernum не нужен при рековери ? Давайте не будем путать крешрековери и рековер после рестора. [quote автор] database server uses the oncfg_servername.servernum file when it salvages logical-log files during a whole-system restore[ /quote] 1.Для крешрековери этот файл не нужен, он нужен только для утилиты onbar при полном востановлении. другая утилита бекапирования (ontape ) в нем не нуждается ( во всяком случае не нуждалась когда я последний раз ею пользовался). 2. В этом файле нет SCN или какого либо другого значения отражающего порядок следования транзакций в разрезе файлов. Он великолепно правится руками в отличие от controlfile. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 21:16 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat- Принипиальных отличий в логах нет, есть отличия в архитектуре сервера, одной из которых есть отсутствие UNDO. давайте конкретно, в отличие от ораклового рековери, который не находит арклоги удаленные рманом, информикс рековери найдет удаленный ontape logical-log, вы это утверждаете ? onstat- Почитайте, что происходит на первой. Это очень важно с точки зрения понимания как происходит fast recovery, и почему вероятность появления битых страниц после падения OS + informix снижается в режиме unbufferd log. прочел, в данном тексте вижу описание совершенно стандартного Write-ahead log, не вижу ни одного принципиального отличия от накатывания ораклового REDO. можно более развернутые пояснения. onstat- Если select for update выполнить нельзя, то не нужно говорить о востановлении полнофункциональной работы во время фонового наката логов. Давайте будем объективными. на не затронутые упавшими транзакциями данные select for update пройдет, на затронутые конечно rw транзакции не пройдут, зато прочесть можно. onstat- Давайте не будем путать крешрековери и рековер после рестора. хорошо, что произойдет если в процессе работы oncfg_servername по вине ОС будет запорот мусором ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 22:02 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crashonstat- Принипиальных отличий в логах нет, есть отличия в архитектуре сервера, одной из которых есть отсутствие UNDO. давайте конкретно, в отличие от ораклового рековери, который не находит арклоги удаленные рманом, информикс рековери найдет удаленный ontape logical-log, вы это утверждаете ? я утверждаю что заархивированные логи , которые находятся на ленте либо в каком либо другом месте недоступном серверу , но доступном утилите востановления ( onbar, ontape ) не нужны серверу при fast - recovery. Сервер следит за тем что бы у него вся информация необходимая для fast recovery была в доступных ему логических журналах. То что журнал уже заархивирован и перенесен в архив не значит что он уже недоступен серверу. Полная аналогия с редо. db2crash прочел, в данном тексте вижу описание совершенно стандартного Write-ahead log, не вижу ни одного принципиального отличия от накатывания ораклового REDO. можно более развернутые пояснения. Что хранится в физическом журнале вы прочитали ( поняли ) ? Насколько я понял вы пока не видите разницы между физическим и логическим журналами. Пока не поймете, что либо рассказывать бессмысленно, а когда прочитаете( поймете) может и обьяснять ничего не нужно будет. db2crash onstat- Давайте не будем путать крешрековери и рековер после рестора. хорошо, что произойдет если в процессе работы oncfg_servername по вине ОС будет запорот мусором ? Вы его востановите . Этот файл может быть запорчен только в случае, когда глюк произошел во время переключения журналов или добавления чанков. В другое время он не изменяется. Если этот файл запорчен вне проведения этих операций то это может говорить только о том что железу на котором работает база срочно нужно отправлять на пенсию. Кстате вспомнил, этот файл нужен при востановлении базы на новом сервере, или если rootdbs, логические и физические журналы доступны, то onbar может взять всю информацию из базы sysutils, это аналогия recovery catalog. Скажу чесно и объективно, до настройки sysutils для для onbar на другом сервере у меня руки не дошли . Что касается востановления файловой системы средствами ОС после падения для минимизации битых страниц в СУБД , то порядок действий на этом форуме описывался, воспользуйтесь поиском. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 23:11 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
В плане защиты от дизастеров DB2 HADR (спасибо информиксу) ничуть не хуже Oracle DataGuard Здесь не совсем корректное сравнение!!! Думаю, что более правильнее сравнивать решение ORACLE RAC+ DataGuard и IBM DB2 with xkoto GRIDSCALE !!! GRIDSCALE is a database load balancer that uses patent-pending technology to dramatically improves transaction performance and data availability through horizontal scaling. Identical replicas of the database are placed in an active/active (n-way) cluster. GRIDSCALE sends DML requests to each node concurrently so that they’re always in sync. However, the Application does not need to wait for all the nodes to complete processing – this results in significant speed-up. а хадр разве умеет более одной стенбай машины иметь и пускать на них отчеты ? Насколько мне известно, IBM работает над этим ... думаю, что в DB2 Cobra, stanby база будет доступна для чтения ... С уважением, Вадим. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 23:19 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
Уважаемый коллега, специально для Вас, небольшой экскурс в DB2. В DB2 используется метод восстановления ARIES(1) (считается наиболее из продвинутых в индустрии). Агент обновляющий запись в БД изменяет соответствующую страницу, и создает запись в журнале, содержащую необходимую информацию для выполнения или отката (redo или undo) изменения. Различные техники и алгоритмы, такие включая XOR журналирование (XOR logging) , используются для минимизации количества данных для журналирования. Ни страницы с данными, ни буфер журнала не сбрасываются на диск немедленно (для оптимизации производительности). Процесс журналирования (logger) и менеджер буферного пула работают вместе для того, что бы соответствовать WAL протоколу (Write Ahead Logging – запись вперед) который гарантирует что ни одна измененная страница не попадет на диск раньше соответствующей этому изменению записи журнала. Только одна операция I/O всегда требуется транзакцией это форсированный сброс буфера журнала когда осуществляется COMMIT. Далее, в отличие от ORACLE, размер записи в логическом журнале DB2, требует гораздо меньше места для транзакции,что существенно сказывается на производительности, особенно в OLTP-окружении. --------------------------------------------------- DB2 9 = 2.4KB of log per transaction Oracle 10gR2 = 4.9KB of log per transaction Oracle 10g RAC = 43.0KB of log per transaction --------------------------------------------------- Reduced logging = increased performance !!! Логические журналы в DB2 - могут иметь зеркальные копии и т.д. Время восстановление DB2 и прикладной системы, зависит от архитектурного решения и реализации методологии - Disaster Recovery. Другими словами, стоимость решения будет зависеть от стоимости простоя прикладной задачи. В данном случае, более важно, что бы производитель СУБД предлагал достаточно гибкие возможности для выбора наиболее оптимального варианта решения. Я не люблю, когда у меня нет права выбора. В этом отношении, достаточно гибкий Informix c его технологией MACH11, да и DB2 имеет достаточно мощный арсенал - DB2 HADR, DB2 SQL-Applay Replication, Q-Replication и т.д. Нужно правильно применять те возможности, которые Вам предлагают. И еще, все что хорошо для ORACLE - это хорошо только для ORACLE!!! Нельзя проецировать свой устав в чужом монастыре ... :) Я за корректное сравнение или за плодотворное общение - это обогащает и сближает людей. С уважением, Вадимю ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2009, 23:51 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat- я утверждаю что заархивированные логи , которые находятся на ленте либо в каком либо другом месте недоступном серверу , но доступном утилите востановления ( onbar, ontape ) не нужны серверу при fast - recovery. это из серии "в трудные военные годы синус достигал значения 2 и даже 3". legical-log точно такая же цикличиская структура, что и REDO. если в эту структуру не влезли все активные транзакции, то что, информикс создает искривление пространства и в это трудное время в структуру logical-log влазит больше ? если нет то ему прийдется переключатся на следующий logical-log файл, этот в точности как и ораклу архивировать. onstat- То что журнал уже заархивирован и перенесен в архив не значит что он уже недоступен серверу. Полная аналогия с редо. нифига, редо это logical-log, если он заархивирован то это уже аналог арклога. onstat- Что хранится в физическом журнале вы прочитали ( поняли ) ? Насколько я понял вы пока не видите разницы между физическим и логическим журналами. да все там понятно, в следствии не сильно удачной архитектуры информиксу информиксу мало востановить датафайлы, нужно востановить картинку памяти, например, чтоб вернуть структуру блокировок, для этого и нужен еще и физический лог. ораклу достаточно проиграть REDO ... onstat- Вы его востановите . Этот файл может быть запорчен только в случае, когда глюк произошел во время переключения журналов или добавления чанков. В другое время он не изменяется. и что, если информикс чуть реже пишет в один из файлов, то теперь он гораздо надежен ? вы с oncfg_servername.servernum получите те же проблемы, что оракл с контролфайлом. те же яйца только в профиль. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 01:10 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
2 db2crash с вами вcе ясно. Тролей в Informix форуме не кормят. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 07:27 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat-2 db2crash с вами вcе ясно. Тролей в Informix форуме не кормят. Ну, вы покормили достаточно :) Потратили кучу времени, хотя, обычно, с анонимами трудно что-либо спокойно и внятно обсуждать - менталитет уже соответствующий. Так что, если уже в самом начале разговора не удается договориться "о понятиях" и предмете спора, то лучше не поддаваться на провокации :) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 11:42 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
onstat-Это и понятно, база наверное была в bufferеd log, и документация об этом кажись (насколько я помню) предупреждает, что могут быть неприятные моменты с crash recovery. Да, базы были в bufferеd log из-за проблем производительности и слабых компов в начале внедрения системы. Вот только ссылки в официальной док-ии, которая предупреждает о возможности неподнятия сервера при bufferеd log, я не помню ни на версиях 7.31 ни на 9.30. Будет любопытно глянуть на такие ссылки. Да и неверное это в принципе - сервер может потерять несколько транзакций из-за bufferеd log, на это были согласны. Но НЕ подняться в онлайн после броска питания и последующего fast recovery ? Это уже явные баги алгоритма обеспечения целостности, которые , кстати, вылезли явно при введении, мною проклятого, фаззи чекпойнта. К счастью, потом (в 10-е) этот режим все таки отменили, чем еще раз подтвердили его ущербность. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 11:56 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crashда все там понятно, в следствии не сильно удачной архитектуры информиксу информиксу мало востановить датафайлы, нужно востановить картинку памяти, например, чтоб вернуть структуру блокировок, для этого и нужен еще и физический лог. ораклу достаточно проиграть REDO ... Бред и досужий вымысел. В физическом логе фактически лежат теневые копии, неизменённые версии страниц данных из буферного пула. Очень близко к REDO. Никаких данных о блокировках и т.п. там нет. Задача физ. лога обеспечить максимально быстрое восстановление после падения - не нужно проигрывать длиииинный при активной работе журнал - встал, быстро восстановил картинку в памяти на момент незадолго до падения, быстро пробежался по логам, готово. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 13:22 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
informix/informixБред и досужий вымысел. В физическом логе фактически лежат теневые копии, неизменённые версии страниц данных из буферного пула. Очень близко к REDO. Никаких данных о блокировках и т.п. там нет. Задача физ. лога обеспечить максимально быстрое восстановление после падения - не нужно проигрывать длиииинный при активной работе журнал - встал, быстро восстановил картинку в памяти на момент незадолго до падения, быстро пробежался по логам, готово. а в чем смысл восстанавливать структуры памяти ? в оракле не успевшие записаться блоки из REDO расскладываются по датафайлам, почему информиксу приходится кроме этого еще и востанавливать еще и некие буфера памяти ? но больше интересует, что за магия происходит когда длинная транзакция переполнит все файлики logical-log, откуда возьмется спейс для продолжения работы транзакции кроме как архивирования (бэкапирования) одного из logical-log ? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 14:30 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
GVF112GVF Далее, в отличие от ORACLE, размер записи в логическом журнале DB2, требует гораздо меньше места для транзакции,что существенно сказывается на производительности, особенно в OLTP-окружении. --------------------------------------------------- DB2 9 = 2.4KB of log per transaction Oracle 10gR2 = 4.9KB of log per transaction Oracle 10g RAC = 43.0KB of log per transaction --------------------------------------------------- Reduced logging = increased performance !!! не факт. в оракловом блоке хранится инфо о блокировках, потому не вижу ничего удивительного в том, что запись в REDO слегка больше. зато имея блокировки как атрибут блока ораклу отличии от дб2 не приходится заниматься эскалацией, что вредит конкурентному доступу, особенно в OLTP. что касается RAC, мне представляется более выгодной стратегией записать чуть больше, чем ждать отклика через HADR стендбай ноды, который понадобится для сравнимой с RAC доступностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 14:42 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crashне факт. в оракловом блоке хранится инфо о блокировках, потому не вижу ничего удивительного в том, что запись в REDO слегка больше.Тут самое главное что писать, некотрые пишут делты строк, а некоторые целиком. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 15:13 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
Журавлев Денисdb2crashне факт. в оракловом блоке хранится инфо о блокировках, потому не вижу ничего удивительного в том, что запись в REDO слегка больше.Тут самое главное что писать, некотрые пишут делты строк, а некоторые целиком. да, в оракловом REDO дельта, но всего блока, вместе с блокировкой, а не отдельной записи. Oracle docsRedo log files are filled with redo records. A redo record, also called a redo entry, is made up of a group of change vectors, each of which is a description of a change made to a single block in the database. For example, if you change a salary value in an employee table, you generate a redo record containing change vectors that describe changes to the data segment block for the table, the undo segment data block, and the transaction table of the undo segments. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 15:36 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
db2crash, ЭТО ФАКТ !!! АРГУМЕНТ ДОСТАТОЧНО ВЕСОМЫЙ - Я оперирую не голыми словами, а конкретными результатами (цифрами). Вы можете соглашаться или не соглашаться (если Вы Oracle evangelist), но у Вас ничего нет кроме слов. Вам приводят реальные цифры и объективные доводы, а что в ответ - не зрелые рассуждения. Как-то, даже обидно за Вас. не факт. в оракловом блоке хранится инфо о блокировках, потому не вижу ничего удивительного в том, что запись в REDO слегка больше. зато имея блокировки как атрибут блока ораклу отличии от дб2 не приходится заниматься эскалацией, что вредит конкурентному доступу, особенно в OLTP. Вопрос экскаляции блокировок, это вопрос правильного выбора уровня изоляции транзакций, и архитектурного дизайна приложения. Если у разработчика криво стоят руки, то и оптимистический уровень его не спасет ... так как он еще более требовательнее и накладывает дополнительные проверки при выполнении последних изменений. что касается RAC, мне представляется более выгодной стратегией записать чуть больше, чем ждать отклика через HADR стендбай ноды, который понадобится для сравнимой с RAC доступностью. Это уже обсуждали. По всей видимости, у Вас плохо было с математикой. Время переключения между узлами HADR на порядок меньше чем у ORACLE (менее 15 секунд). Стоимость решения ниже, запас по процессорным ресурсам выше чем у ORACLE !!! Если у Вас упадет одна нода в ORACLE RAC, эффективность процессорного пула упадет существенно (для двух узлов на 50%) а это значить, что эффективность обработки массива данных упадет, время отклика на запрос увеличиться почти в двое .... вот к чему Вы клоните. Далее, DB2 на 20% эффективнее в OLTP задачах чем ORACLE при использовании на одной и той же аппаратной платформе. Эффективность OLTP-запросов, зависит и от дисковых операций I/O ввода/вывода. Чем больше ORACLE пишет в LOG тем хуже для ORACLE !!! Дисковые операции самые медленные... запись больших блоков, требует дополнительных буферов и т.д. С уважением, Вадим. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 22:52 |
|
Informix -> DB2 (не хочу!)
|
|||
---|---|---|---|
#18+
GVF112GVF ЭТО ФАКТ !!! АРГУМЕНТ ДОСТАТОЧНО ВЕСОМЫЙ - Я оперирую не голыми словами, а конкретными результатами (цифрами). факт ? где ? я не вижу. вижу цифирю записи дельты оракла + блокировки и дельты дб2, причем цифири без источника ... ну дельта с блокировкой больше, меня это не удивляет. хотите конкретные цифры - пожалуйте: http://tpc.org/tpcc/results/tpcc_result_detail.asp?id=105080802 http://tpc.org/tpcc/results/tpcc_result_detail.asp?id=105101702 GVF112GVF Вопрос экскаляции блокировок, это вопрос правильного выбора уровня изоляции транзакций, и архитектурного дизайна приложения. Если у разработчика криво стоят руки, то и оптимистический уровень его не спасет ... так как он еще более требовательнее и накладывает дополнительные проверки при выполнении последних изменений. 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 GVF112GVF Это уже обсуждали. По всей видимости, у Вас плохо было с математикой. Время переключения между узлами HADR на порядок меньше чем у ORACLE (менее 15 секунд). Стоимость решения ниже, запас по процессорным ресурсам выше чем у ORACLE !!! Если у Вас упадет одна нода в ORACLE RAC, эффективность процессорного пула упадет существенно (для двух узлов на 50%) а это значить, что эффективность обработки массива данных упадет, время отклика на запрос увеличиться почти в двое .... вот к чему Вы клоните. не думаю, что проблемы с математикой у меня. при 6 нодах RAC падение одной из них даст просадку всего на 16%, это при том что ресурсы HADR-ского стендбая тупо простаивают. учитывая, что стендбай нода может быть одна, простаивать будет 50% ресурсов. по записи лога в RAC, не вижу связи с временем переключения. попробую повторить: для того чтоб обеспечить сравнимую с RAC доступность дб2 придется писать не только в собственный лог, но и доставлять в синхронном режиме на стенбай ноду и записывать еще и там. на этом фоне 43кб выглядят гораздо привлекательней. GVF112GVF Далее, DB2 на 20% эффективнее в OLTP задачах чем ORACLE при использовании на одной и той же аппаратной платформе. разве, что в мечтах ... на сию секунду 6 нод RAC в тестах SAP-SD самая крупная конфигурация которая есть у IBM. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2009, 23:38 |
|
|
start [/forum/topic.php?fid=44&msg=35784948&tid=1607893]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 170ms |
0 / 0 |