Измерение производительности средств ввода-вывода сервера Oracle

Измерение производительности ввода-вывода на сервере OracleДля измерения производительности средств ввода-вывода сервера баз данных Oracle на выбор доступен целый ряд замечательных инструментов. В частности, в составе операционной системе поставляется несколько утилит, которые просты в использовании и предоставляют информацию о загруженности дисков. Двумя наиболее популярными из этих утилит для измерения производительности дисков являются утилиты iostat и sar. О том, как ими пользоваться, более подробно рассказывалось в этом блоге.

 

Оптимально ли распределяются ресурсы ввода-вывода?

По выводу утилиты sar можно легко выяснить, насколько интенсивно используется подсистема хранения. Если количество ожиданий превышает количество ЦП или если показатели времени обслуживания являются довольно высокими (например, превышают 20 миллисекунд), тогда, значит, в системе происходит состязание за ресурсы на уровне средств ввода-вывода. Одним из наиболее полезных применений команды sar является выяснение того, не используются ли какие-нибудь диски чересчур интенсивно по сравнению с другими дисками в системе. После определения таких “загруженных дисков” можно легко перемещать с них файлы данных на менее загруженные диски и тем самым распределять нагрузку более равномерно.

Ниже приведен пример вывода команды sar -d, показывающий, что значения в столбце очередей являются чрезвычайно высокими. Даже в пиковые периоды значение в столбце avque должно быть меньше 2, а здесь оно достигает 61.4. Очевидно, что в файловой системе c2t6d0 происходит что-то такое, что приводит к получению такого высокого значения:

$ sar -d 10 5
HP-UX finance1 B.11.00 A 9000/800 07/03/08
17:27:13   device   %busy   avque   r+w/s   blks/s   avwait   avserv
17:27:23   c2t6d0   100     61.40      37      245     4.71    10.43
           c5t6d0   20.38    0.50      28      208     4.92     9.54
           c2t6d0   100     61.40      38      273     4.55     9.49
           c5t6d0   18.28    0.50      27      233     4.46     7.93
           c0t1d0   0.10     0.50       4       33     4.99     0.81
. . .
$

Получать представление о распределении ресурсов ввода-вывода в системе можно с помощью запроса, показанного в листинге 1 ниже.


 

SQL> SELECT d.name,
2 f.phyrds reads,
3 f.phywrts wrts,
4 (f.readtim / decode(f.phyrds,0,-1,f.phyrds)) readtime,
5 (f.writetim / decode(f.phywrts,0,-1,phywrts)) writetime
6 FROM
7 v$datafile d,
8 v$filestat f
9 WHERE
10 d.file# = f.file#
11 ORDER BY
12* d.name;
NAME                          READS WRTS   READTIME  WRITETIME
----------------------------- ----- ---- ---------- ----------
/pa01/oradata/pa/lol_i_17.dbf    23    9 .608695652 .222222222
/pa01/oradata/pa/lol_i_18.dbf    18    7 .277777778          0
. . .
SQL>

 


Внимание! Чрезмерное количество операций чтения и записи на некоторых дисках свидетельствует о том, что, возможно, в системе ввода-вывода возникают состязания за дисковые ресурсы.


 

Уменьшение состязаний за дисковые ресурсы

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

  • Увеличивать количество дисков в системе хранения.
  • Разделять файлы базы данных и файлы журналов повторного выполнения.
  • В больших таблицах использовать секции для сокращения ввода-вывода.
  • Рассредоточивать данные либо вручную, либо за счет использования системы RAID с расслоением дисков.
  • Инвестировать в передовые технологии, наподобие кэширования файлов, во избежание появления узких мест в подсистеме ввода-вывода.
  • Рассматривать вариант использования новой системы автоматического управления хранением (Automatic Storage Management), о которой более подробно рассказывалось в этом блоге.

 

Рекомендации, предлагаемые Oracle для оптимального использования дисков в рамках методики SAME

Oracle предлагает некоторые рекомендации для настройки оптимального использования дисков в рамках методики SAME (Stripe and Mirror Everything — расслоение и зеркальное отображение всех данных). Эта методика заключается в расслоении всех файлов по всем дисками и зеркальном отображении всех данных для получения простой и эффективной конфигурации дисков с очень высокой степенью готовности. Расслоение данных по всем доступным дискам позволяет равномерно распределять нагрузку и избегать образования “горячих” точек. Еще в рамках методики SAME рекомендуется размещать те данные, к которым часто получается доступ, на внешней половине дисков. Целью, преследуемой в SAME стратегии по использованию дисков, является устранение “горячих” точек и максимизация степени производительности средств ввода-вывода.

 

Производительность сети

 Исключать сеть из списка причин в периоды плохой производительности можно путем выполнения проверки на предмет того, не является ли она загруженной и не подвергается ли чрезмерным задержкам. Для проверки производительности сети можно использовать входящую в состав операционной системы утилиту netstat. Чрезмерное количество круговых обменов данными по сети, причиняемое клиентскими сообщениями, может тормозить работу сети и увеличивать время задержек, а, значит, и повышать нагрузку на ЦП в системе. В подобных случаях нужно пытаться сокращать количество круговых обменов за счет применения операций вставки и выборки массивов.

Вас заинтересует / Intresting for you:

Настройка производительности э...
Настройка производительности э... 3007 просмотров Antoniy Mon, 29 Jan 2018, 17:37:48
Настройка производительности б...
Настройка производительности б... 2741 просмотров Александров Попков Fri, 19 Jan 2018, 08:41:00
Кэши, копии  и управление памя...
Кэши, копии и управление памя... 3728 просмотров Дэн Wed, 03 Jan 2018, 17:03:54
Измерение производительности э...
Измерение производительности э... 25387 просмотров Antoni Mon, 01 Feb 2021, 16:15:50
Войдите чтобы комментировать