Позвольте, дорогие читатели, поделиться с вами опытом работы с промышленной системой, для которой время от времени отмечалась низкая производительность и конкуренция за блоки сегментов отката. В остальное время приложение выполнялось с высокой производительностью и без конкуренции за сегменты отката. Для того чтобы получать моментальные снимки в некоторые интервалы времени, мы использовали инструментальное средство Кроме того, мы попросили программистов, разработавших это приложение, сделать моментальные снимки перед выполнением вызывающего подозрения процесса и после него. Этот процесс обычно выполняется около 10-15 мин и обновляет несколько таблиц, используя информацию из загружаемых с сервера файлов данных. Неоднократно таких файлов загружалось более одного. В моментальные снимки, полученные при помощи statspack, включены комментарии пользователей для определения, какой из них выполнен перед процессом, а какой после. Мы ожидали получить несколько комбинаций моментальных снимков "до" и "после".
В приложении отсутствовал какой-либо механизм планирования и отсева нескольких процессов, обновляющих один и тот же набор таблиц из нескольких входных файлов. В некоторые моменты времени наблюдалось до двух дюжин таких процессов. При сравнении ряда моментальных снимков до процесса с соответствующими им моментальными снимками после процесса становится очевидно, что именно эти процессы являются источником конкуренции и медленной реакции системы. На вопрос, в чем причина такой одновременной обработки входных файлов, ответа мы так и не получили. Их вполне можно было обрабатывать последовательно, и весь процесс по времени должен был уложиться в технологическое пакетное окно. Таким образом, просто изменив способ обработки этих файлов приложением, мы смогли устранить проблему медленной реакции и конкуренции за сегменты отката.
Если отреагировать на описанную выше ситуацию увеличением числа сегментов отката, мы уверены, что проблемы конкуренции вернутся снова, чтобы стать нашим неразлучным спутником во всех случаях, когда приложение будет обрабатывать еще больше входных файлов или большие объемы данных при том же количестве файлов. Кроме того, медленная реакция системы продолжит оставаться проблемой, так как Oracle для реконструкции совместимого по чтению представления данных будет вынужден считывать больше информации из сегментов отката.
Однако такое решение может не быть применимо во всех случаях. Поэтому стоит попробовать изучить их снова, чтобы выяснить, есть ли в базе данных достаточное количество сегментов отката, имеющих подходящие размеры, чтобы
поддерживать необходимую приложению обработку.
< Предыдущая | Следующая > |
---|