Статистика операций сканирования / обновления в DB2 и Oracle - PullRequest
2 голосов
/ 26 апреля 2011

Я ищу способ получения статистики из баз данных Oracle и DB2 для подсчета операций выбора / обновления / вставки / удаления, выполняемых для каждой таблицы. Другими словами, я хотел бы знать, сколько операций сканирования было выполнено для данной таблицы по сравнению с тем, сколько операций модификации было выполнено.

Я обнаружил, что это возможно сделать в MS SQL Server, как описано в http://msdn.microsoft.com/en-us/library/dd894051%28v=sql.100%29.aspx

Причина, по которой мне это нужно, в том, что она предоставляет разумную статистику, если стоит применить сжатие для данной таблицы. Чем лучше соотношение сканирования / обновления - тем лучше кандидат в таблицу. Я думаю, что это относится и к другим базам данных.

Так возможно ли получить эту статистику в Oracle или / и DB2? Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 26 апреля 2011

В Oracle вы можете увидеть, сколько обновлений / удалений / вставок было в таблице в sys.dba_tab_modification. Данные сбрасываются в таблицу каждые 4 часа. Для чтения вы можете использовать dba_hist_seg_stat, часть AWR. Использование этого лицензировано. sys.dba_tab_modifications сбрасывается, когда таблица получает новую статистику оптимизатора.

1 голос
/ 26 апреля 2011

Мой ответ относится к механизмам баз данных DB2 для платформ Linux, UNIX и Windows (LUW), а не к DB2 для iSeries (AS / 400) или DB2 для z / OS, которые имеют внутренние механизмы, существенно отличающиеся от платформ LUW.Все ссылки на документацию, которые я включил, являются справочной версией 9.7 DB2 for LUW.

DB2 for LUW предоставляет обширную статистику производительности и использования в каждой версии механизма обработки данных, включая бесплатную DB2 Express.-C продукт.Сбор этой статистики регулируется серией настроек ядра базы данных, называемых переключателями системного монитора .Статистические данные, которые вы ищете, включают переключатель монитора таблицы, а также, возможно, переключатели монитора оператора и UOW (единицы работы).Когда эти переключатели системного монитора включены, вы можете получить промежуточные итоги различных показателей и счетчиков производительности из мониторов снимков или выбрав из административные представления SQL (в схеме SYSIBMADM), которые представляюттот же вывод монитора снимков, что и наборы результатов SQL.Мониторы моментальных снимков требуют меньше системных издержек, чем мониторы событий , которые запускаются в фоновом режиме как трассировка и сохраняют поток подробной информации в специальных таблицах или файлах.

Сжатие лицензионная функция , которая изменяет внутреннее хранилище таблиц и индексов на всем пути от табличного пространства до пула буферов (кэш-памяти RAM) и файла журнала транзакций.В большинстве случаев дополнительные накладные расходы процессора на сжатие и распаковку более чем компенсируются общим снижением количества операций ввода-вывода.Функция глубокого сжатия строк сжимает строки в таблицах, создавая и используя 12-битный словарь многобайтовых шаблонов, которые могут даже пересекать границы столбцов.Включение глубокого сжатия строк для таблицы обычно уменьшает ее размер на 40% и более перед вмешательством DBA.Индексы сжимаются с помощью сокращенного алгоритма, который использует их отсортированный характер, исключая общие начальные байты между текущим и предыдущим индексными ключами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...