Transaction Management

Оценить
(0 голоса)

Если размер ULC слишком мал, то это приведет к его чрезмерному опорожнению в конец журнала с возможной конкуренцией за семафор протоколирования (сообщение хранимой процедуры sp_sysmon, выводимое под заголовком Task Context Switches Due To: Log Semaphore Contention). На рисунке 23.10 имеется показатель Log Semaphore Requests (запросы семафора протоколирования) - большое значение показателя Waited (ожидавшие) по сравнению с Granted (гарантированные) может также указывать на наличие проблем.

Балансировка ввода/вывода между устройствами

Чем больше операций ввода/вывода вы сможете распределить между множеством устройств, тем менее вероятно возникновение конфликтов ввода/вывода. Далее приведены некоторые основные принципы, позволяющие избежать конкуренции и сокращать время отклика при выполнении операций ввода/вывода:

•             Используйте обоснованное количество физических и логических устройств ввода/вывода. Увеличение количества физических устройств увеличивает пропускную способность ввода/вывода на данной системе. Пропускная способность ввода/вывода становится более важной по мере увеличения размеров дисковых устройств. Важно учитывать количество шпинделей, а не просто объем дисковой памяти.

Распределяйте таблицы по множеству дисков либо с помощью менеджера томов, либо используя хранимую процедуру sp_placeobject в СУБД Sybase. Увеличение количества логических устройств Sybase гарантирует минимальную конкуренцию в очередях ввода/вывода ASE.

•             Рассмотрите возможность использования отдельного диска для журнала транзакций. В интенсивно обновляемой среде обработки данных следует рассмотреть размещение устройства протоколирования на отдельном диске. Чтобы направить все протоколирование на это устройство, воспользуйтесь хранимой процедурой sp_logdevice.

•             Распределите приложения между множеством БД для того, чтобы увеличить производительность протоколирования. Поскольку имеется только одно устройство протоколирования на каждую БД, разделение данных между множеством БД увеличит количество устройств протоколирования и, следовательно, производительность протоколирования в целом.

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

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

Высокий процент операций ввода/вывода (от общего количества операций), сконцентрированных на единственном дисковом устройстве или на небольшом количестве таких устройств, может указывать на "узкое место" с точки зрения производительности, если для этих устройств не было реализовано эффективное расслоение.

Имеется в виду stripping - расслоение (расщепление) потока данных на биты, байты или блоки, которые пишутся параллельно на разные устройства в дисковых и ленточных массивах, ускоряя операции записи.

Вспомните, что stripping означает отсутствие взаимооднозначных отношений между устройствами Sybase и дисками. Обратитесь к iostat для получениия информации о дисках; об этом можно прочесть в разделе "Второй этап. Мониторинг дисков" в главе 21.

Подробнее в этой категории: « Мониторинг Sybase ASE Настройка ЦП »
Настройка ЦП
Настройка возможностей параллельной обработки
Процентное значение показателя
Производительность параллельной сортировки
Настройка других аспектов

Добавить комментарий


Защитный код
Обновить