Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Колич-во commit и rollback - непонятно... / 25 сообщений из 56, страница 1 из 3
18.02.2014, 18:35
    #38565019
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Добрый вечер!
Приложение внешнее и 3-х звенное. Сервер приложений Web Sphere, DB2- 9.7. Непонятно, почему в базе такое количество rollback. Например 20 000 commit и почти такое же количество rollback.
Причем делаю скриптом проверку :
Код: sql
1.
select COMMIT_SQL_STMTS,ROLLBACK_SQL_STMTS from SYSIBMADM.SNAPDB;


И даже в Toad счетчик растет после вышеуказанного скрипта, а вот если в командном окне выполнять тот же скрипт, то счетчик commit - ов не растет.
Может я чего то не понимаю и для DB2 нормальное такое количество commit и rollback, ведь это сервак должно грузить, не?
Спасибо знатокам Db2 за ответы!
...
Рейтинг: 0 / 0
19.02.2014, 12:20
    #38565832
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Марк, может вы подскажите про "внутренности" DB2
...
Рейтинг: 0 / 0
19.02.2014, 13:36
    #38566024
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoed,

Добрый день.

Ваш вопрос похож на "а это что, нормально для машины, что она едет со скоростью 60 км в какой-то промежуток времени и много сигналит". :)

(commit_sql_stmts + int_commits + rollback_sql_stmts + int_rollbacks) - это количество транзакций с момента активации базы.
Много это или мало - трудно сказать, т.к. ни нагрузка, ни время, за которое эти транзакции произошли вы не приводите.

Если вопрос о том, что соотношение commits и rollbacks выглядит странным, то это да. Но DB2 обычно сама не завершает транзакции, если её не просят. Может, у вас там код так в сфере написан, что оно так много откатывает.
Возьмите одно из соединений, которое больше всех откатывает, и посмотрите, что за запросы оно отправляет в базу с помощью event monitor for activities, например.
...
Рейтинг: 0 / 0
19.02.2014, 15:20
    #38566292
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Mark Barinsteinmedoed,

Добрый день.

Ваш вопрос похож на "а это что, нормально для машины, что она едет со скоростью 60 км в какой-то промежуток времени и много сигналит". :)

(commit_sql_stmts + int_commits + rollback_sql_stmts + int_rollbacks) - это количество транзакций с момента активации базы.
Много это или мало - трудно сказать, т.к. ни нагрузка, ни время, за которое эти транзакции произошли вы не приводите.

Если вопрос о том, что соотношение commits и rollbacks выглядит странным, то это да. Но DB2 обычно сама не завершает транзакции, если её не просят. Может, у вас там код так в сфере написан, что оно так много откатывает.
Возьмите одно из соединений, которое больше всех откатывает, и посмотрите, что за запросы оно отправляет в базу с помощью event monitor for activities, например.

Марк, спасибо за ответ! DB2 вообще странная, я бы сравнил её в разрезе стиральных машин, как вятка автомат с Bosh. Что там она крутит и вертит, непонятно (я про вятку), а вот с MSSQL (Bosh) там все ясно, там берёшь профайлер, которые не троит и настраиваешь на лету, хочешь по имени aplication, хочешь по login, по hostname и т.д.! Вы меня поймите, после того, как profiler db2 троит в логе простешие операции при аудировании, поверишь во что угодно))
Но впрочем ясно куда копать, в клиентское приложение спасибо!
...
Рейтинг: 0 / 0
19.02.2014, 15:49
    #38566346
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoed,

Нет, я не могу вас понять. Если вы не разбираетесть в кнопочках на стиральной машине, вы не сможете нормально стирать.
Да, есть в event monitor for statements такая особенность, что он селект разбивает на части. Но почему это проблема DB2?
Не нравится, используйте event monitor for activities. Он не разбивает запросы на части, с ним вы можете делать абсолютно то же, что вы перечислили для MSSQL.
...
Рейтинг: 0 / 0
19.02.2014, 17:18
    #38566548
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Mark Barinsteinmedoed,

Нет, я не могу вас понять. Если вы не разбираетесть в кнопочках на стиральной машине, вы не сможете нормально стирать.
Да, есть в event monitor for statements такая особенность, что он селект разбивает на части. Но почему это проблема DB2?
Не нравится, используйте event monitor for activities. Он не разбивает запросы на части, с ним вы можете делать абсолютно то же, что вы перечислили для MSSQL.
И визуально настраивается, только с с помощью мыши event monitor for activities, без скриптов, без включения каких то опций на базе, да? Полный аналог SQL Profiler?
...
Рейтинг: 0 / 0
19.02.2014, 17:26
    #38566561
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedMark Barinsteinmedoed,

Нет, я не могу вас понять. Если вы не разбираетесть в кнопочках на стиральной машине, вы не сможете нормально стирать.
Да, есть в event monitor for statements такая особенность, что он селект разбивает на части. Но почему это проблема DB2?
Не нравится, используйте event monitor for activities. Он не разбивает запросы на части, с ним вы можете делать абсолютно то же, что вы перечислили для MSSQL.
И визуально настраивается, только с с помощью мыши event monitor for activities, без скриптов, без включения каких то опций на базе, да? Полный аналог SQL Profiler?

Отвечу за Марка, в DB2 это надо скриптами делать, а в нормальных платформах - есть визуальные инструменты, встроенные в MS студию. Так что в очередной раз не зачет DB2, имхо...
...
Рейтинг: 0 / 0
19.02.2014, 19:02
    #38566692
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoed,

В DataStudio правой кнопкой мыши на базе и Start Tuning.
Если интересно, посморите.
...
Рейтинг: 0 / 0
19.02.2014, 19:30
    #38566726
m&m
m&m
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoed... а в нормальных платформах - есть визуальные инструменты, встроенные в MS студию. Так что в очередной раз не зачет DB2, имхо...
по такой логике - aix не нормальная платформа. бо кнопочек для мыши нет.
...
Рейтинг: 0 / 0
19.02.2014, 22:58
    #38566862
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Mark Barinstein,

Ну теоретически можно покрутить поставить http://www.ibm.com/developerworks/ru/downloads/datastudio1/index.html ]студию. Но похоже, для каждой задачи в db2 своя студия нужна:-) Не появилось ничего толкового кстати для отслеживания online блокировок, чтоб прям было видно, кому плохо и скрипты виновника соответсвенно запрос виновник блокировок, желательно бы все визуально и наглядно, не?
...
Рейтинг: 0 / 0
19.02.2014, 22:59
    #38566864
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
m&mmedoed... а в нормальных платформах - есть визуальные инструменты, встроенные в MS студию. Так что в очередной раз не зачет DB2, имхо...
по такой логике - aix не нормальная платформа. бо кнопочек для мыши нет.
Ну да черный экран и батники, это то что нужно в 21 веке, за этим будущее:-):-):-)
...
Рейтинг: 0 / 0
20.02.2014, 12:32
    #38567355
m'n'm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoed...черный экран и батники, это то что нужно в 21 веке, за этим будущее:-):-):-)
Лучше черный экран и скрытый в его зияющей абиссали искуcственный интеллект, управляющий всем.
...
Рейтинг: 0 / 0
20.02.2014, 15:24
    #38567658
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedНе появилось ничего толкового кстати для отслеживания online блокировок, чтоб прям было видно, кому плохо и скрипты виновника соответсвенно запрос виновник блокировок, желательно бы все визуально и наглядно, не?

Не знаю насчёт "нового", но старое показывает блокировки довольно наглядно:

http://members.tripod.com/chuzhoi_files/index.html

вариант для 9.7 работает и с 10.5. Ну... качество этой утилиты неидеально, больше как демонстрация возможностей сойдёт. СУБД-то содержит в себе много чего интересного, а вот с гуем всё время как-то не везёт. Для 3d-party-разработчиков беда с комьюнити и платёжеспособным спросом. Иногда у меня случаются приступы вида "а не заняться ли самому", но как-то быстро проходят.
...
Рейтинг: 0 / 0
20.02.2014, 15:26
    #38567662
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedНу да черный экран и батники, это то что нужно в 21 веке, за этим будущее:-):-):-)
А вовсю используемая процедурная, то бишь dBase-во-Clipper'ная логика, внутри sql-сервера, в 21-м веке - это совершенно нормально, ага.
...
Рейтинг: 0 / 0
20.02.2014, 16:17
    #38567758
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Victor MetelitsamedoedНу да черный экран и батники, это то что нужно в 21 веке, за этим будущее:-):-):-)
А вовсю используемая процедурная, то бишь dBase-во-Clipper'ная логика, внутри sql-сервера, в 21-м веке - это совершенно нормально, ага.
Ога, Ога!!!

Это смотря на каких объемах работать, вы пробовали поправить какой нить скрипт посложнее, сгенеренный универсальным framework LINQ, например? Ну и по процедурному подходу работает магазин OZON (правда там конечно MSSQL), ничего вроде, летает)) И всякие Framework и конструкторы ала акцесс идут в сад , когда записей > 100 лямов...
...
Рейтинг: 0 / 0
20.02.2014, 16:20
    #38567763
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Victor MetelitsamedoedНе появилось ничего толкового кстати для отслеживания online блокировок, чтоб прям было видно, кому плохо и скрипты виновника соответсвенно запрос виновник блокировок, желательно бы все визуально и наглядно, не?

Не знаю насчёт "нового", но старое показывает блокировки довольно наглядно:

http://members.tripod.com/chuzhoi_files/index.html

вариант для 9.7 работает и с 10.5. Ну... качество этой утилиты неидеально, больше как демонстрация возможностей сойдёт. СУБД-то содержит в себе много чего интересного, а вот с гуем всё время как-то не везёт. Для 3d-party-разработчиков беда с комьюнити и платёжеспособным спросом. Иногда у меня случаются приступы вида "а не заняться ли самому", но как-то быстро проходят.
Позвольте спросить и где вы там видите эскалацию блокировок (желательно в виде графа), кто виновник, кому плохо. Когда возникла блокировка и прям со скриптами (виновника и блокируемого)? У MSSQL, то что я описал раннее, есть утилиты, причем тоже бесплатные!
...
Рейтинг: 0 / 0
20.02.2014, 16:25
    #38567772
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
m'n'mmedoed...черный экран и батники, это то что нужно в 21 веке, за этим будущее:-):-):-)
Лучше черный экран и скрытый в его зияющей абиссали искуcственный интеллект, управляющий всем.
По мне уж лучше Windows c его мелкими недочетами и intelligence студий, чем командная строка и батники.
Но впрочем полно в мире извращенцев, зачем им интерфейс
...
Рейтинг: 0 / 0
20.02.2014, 17:41
    #38567896
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedПозвольте спросить и где вы там видите эскалацию блокировок (желательно в виде графа), кто виновник, кому плохо. Когда возникла блокировка и прям со скриптами (виновника и блокируемого)? У MSSQL, то что я описал раннее, есть утилиты, причем тоже бесплатные!

Про эскалацию в виде графа не понял, про скрипты тоже (это вы так текущие выполняемые sql-выражения называете?), а дерево зависимостей блокировок показывается при включённом "show lock dependency". Control Center, царствие ему небесное, теоретически это тоже умел, насчёт нынешнего эклипсного инструмента не знаю (очень редко запускаю).
...
Рейтинг: 0 / 0
20.02.2014, 17:48
    #38567902
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
С выражением "эскалация блокировок" я понимаю ситуацию, когда блокировки меньшей гранулярности (напр., блокировки на записи) преобразуются в блокировку большей (напр., таблицу целиком), а вы, наверное, что-то другое.

"Show lock dependency" - правой кнопкой по списку коннектов.

CC показывает меньше.
...
Рейтинг: 0 / 0
20.02.2014, 17:51
    #38567906
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedЭто смотря на каких объемах работать, вы пробовали поправить какой нить скрипт посложнее, сгенеренный универсальным framework LINQ, например? Ну и по процедурному подходу работает магазин OZON (правда там конечно MSSQL), ничего вроде, летает)) И всякие Framework и конструкторы ала акцесс идут в сад , когда записей > 100 лямов...
Не знаю про сгенерённые скрипты, я вручную пишу. Записей обычно только десятки миллионов, но они весьма широкие (авиабилеты и связанное с ними).
...
Рейтинг: 0 / 0
20.02.2014, 18:10
    #38567920
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Victor MetelitsamedoedПозвольте спросить и где вы там видите эскалацию блокировок (желательно в виде графа), кто виновник, кому плохо. Когда возникла блокировка и прям со скриптами (виновника и блокируемого)? У MSSQL, то что я описал раннее, есть утилиты, причем тоже бесплатные!

Про эскалацию в виде графа не понял, про скрипты тоже (это вы так текущие выполняемые sql-выражения называете?), а дерево зависимостей блокировок показывается при включённом "show lock dependency". Control Center, царствие ему небесное, теоретически это тоже умел, насчёт нынешнего эклипсного инструмента не знаю (очень редко запускаю).
Это вы про Data Studio говорите от IBM, в ней можно посмотреть зависимость блокировок? Я имел в виду, как бы иерархию именно запросов, на верхнем уровне, кто блокирует, ниже кого блокируют, ну и конечно запросы синфой, кто выполняет и сколько запрос уже выполдняется, чтоб у верхнего и нижнего уровня отображались эти данные. Мы используем Toad для работы Db2, надо конечно попробовать поиграться с Data Studio от IBM, может что то дельное появилось.
...
Рейтинг: 0 / 0
20.02.2014, 18:12
    #38567921
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Victor MetelitsamedoedЭто смотря на каких объемах работать, вы пробовали поправить какой нить скрипт посложнее, сгенеренный универсальным framework LINQ, например? Ну и по процедурному подходу работает магазин OZON (правда там конечно MSSQL), ничего вроде, летает)) И всякие Framework и конструкторы ала акцесс идут в сад , когда записей > 100 лямов...
Не знаю про сгенерённые скрипты, я вручную пишу. Записей обычно только десятки миллионов, но они весьма широкие (авиабилеты и связанное с ними).
Я имел в виду автомат, не всегда прокатывает на больших объемах, а процедура как раз может выручить, скрипт может затеряться, а процедура, вроде как родная вещь для РСУБД, имхо!
...
Рейтинг: 0 / 0
21.02.2014, 18:00
    #38569069
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
medoedНе появилось ничего толкового кстати для отслеживания online блокировок, чтоб прям было видно, кому плохо и скрипты виновника соответсвенно запрос виновник блокировок, желательно бы все визуально и наглядно, не?
Насчет графики - мне она не нужна для задачи понять, как решить проблему. Как правило в онлайне такие проблемы не решаются.
Мне гораздо удобнее получить в файлах истории транзакций и потом их анализировать. Вряд ли я буду сидеть и наблюдать за базой в онлайне. Информацию удобнее накапливать в соотв. мониторе и потом спокойно анализировать в удобное для этого время.
Но если очень хочется, то есть MON_LOCKWAITS , раньше была SNAPLOCKWAIT.
Из этого представления можно довольно просто сделать дерево со всей информацией, и если я увижу, что блокировка висит "долго", то я могу отключить виновника сразу.
Историю транзакций всех участников я могу получить на сервере командой
db2pd -apinfo
Графика для этого мне опять же не нужна.
...
Рейтинг: 0 / 0
24.02.2014, 10:46
    #38570152
medoed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
Mark BarinsteinmedoedНе появилось ничего толкового кстати для отслеживания online блокировок, чтоб прям было видно, кому плохо и скрипты виновника соответсвенно запрос виновник блокировок, желательно бы все визуально и наглядно, не?
Насчет графики - мне она не нужна для задачи понять, как решить проблему. Как правило в онлайне такие проблемы не решаются.
Мне гораздо удобнее получить в файлах истории транзакций и потом их анализировать. Вряд ли я буду сидеть и наблюдать за базой в онлайне. Информацию удобнее накапливать в соотв. мониторе и потом спокойно анализировать в удобное для этого время.
Но если очень хочется, то есть MON_LOCKWAITS , раньше была SNAPLOCKWAIT.
Из этого представления можно довольно просто сделать дерево со всей информацией, и если я увижу, что блокировка висит "долго", то я могу отключить виновника сразу.
Историю транзакций всех участников я могу получить на сервере командой
db2pd -apinfo
Графика для этого мне опять же не нужна.
Марк, я уважаю Вас как специалиста, это правда! Но что вы имеете против, насчет графики, зачем мне настраивать какие то мониторы, лазить по файлам, копаться в логах и мониторить транзакции? Как раз в online и удобно, поставил себе админ утилиту, оперативно выявил проблему и закрыл, через час, а не на следующий день, разбирая суточные логи! Насчет накапливания можно и так, настроил SQL профайлер, визуально на запросы и ждешь сколько нужно, потом опять же можно выгрузить хоть в файл трассировки, хоть в xml формат (или тоже логирование в файл).
Ну и чтобы добить Вас и ваши доводы))) В MSSQL уже в 2005 SQL появились операторы pivot и unpivot например, а как с этим в Db2.
Ну и как следствие слабости Db2, в том числе вот: T-SQL язык года
Марк, сильно не расстраивайтесь, уверен к 15 версии Db2, они подтянут (если конечно раньше не закроют её).
...
Рейтинг: 0 / 0
26.02.2014, 09:04
    #38572422
A.Panskikh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Колич-во commit и rollback - непонятно...
"товарис-ч не понимает, товарисчу нужно объяснить"

medoed,

когда выполняются тысячи транзакций в секунду, совершенно непонятно что там визуализировать? Поэтому специалисты, обслуживающие такие системы смотрят на вас с недоумением. В db2 нет готовых графических тулзов, потому что предоставляемые интерфейсы позволяют получить видение на систему в любом виде не напрягаясь. И любой специалист имеет собственный набор подобных инструментов, под разные задачи и системы. И практически все они являются скриптами, работающими в автономном режиме. Хотите графики рисовать - тот же perfmon цепляет счетчики от db2.

Если вам необходимо разобраться в блокировках - есть несколько возможностей. Самый простой и эффективный, IMHO,

db2set DB2_CAPTURE_LOCKTIMEOUT=ON

Если необходимо раскопать глубже, включаете трассировку.

Andy

Знакомящиеся с юниксами сначала бьются в истерике, потом читают документацию и блаженствуют.
Знакомящиеся с виндами сначала блаженствуют, потом читают документацию ...
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Колич-во commit и rollback - непонятно... / 25 сообщений из 56, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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