Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LektsiiNovye.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.92 Mб
Скачать

Подсистемы ввода-вывода

Как уже говорилось, кластеризацию поддерживают различные виды подсистем ввода-вывода. Ниже перечислены три основных вида подсистем ввода-вывода:

  • SCSI JBOD – это SCSI-система с многими инициаторами (контроллерами) на шине SCSI, адресующей простой массив дисков (just a bunch of disks, JBOD); при такой настройке диски адресуются индивидуально и должны быть либо сконфигурированы для расслоения при помощи расслоения Windows, либо адресоваться индивидуально; применяется в случае, если кластер небольшой и главное значение имеет его стоимость;

  • внутренняя RAID-система – в каждом сервере применяется свой RAID-контроллер; недостатком этой системы является то, что алгоритм работы RAID-системы реализован на плате, находящейся на сервере, поэтому кэши контроллеров должны быть отключены;

  • внешняя RAID-система – RAID-контроллер разделяется (используется совместно) компьютерами кластера; кэш и алгоритм работы RAID-системы размещаются в корпусе дисковой системы, а для коммуникации с внешним контроллером применяется простой адаптер главной шины (HBA, host bus adapter).

Внутренняя raid-система

Внутренние RAID-контроллеры спроектированы таким образом, что аппаратура, управляющая работой RAID, и кэш находятся на самом компьютере. Когда используется внутренняя RAID-система, разделяемая дисковая система разделяется до расслоения RAID, как показано на рис. 10.5.

рис. 10.5. Внутренний RAID-контроллер

Так как кэш размещён на контроллере, который не находится в совместном использовании, все данные, которые были в кэше в момент отказа системы, станут недоступными. Это большая проблема в случае, когда работа идёт с реляционными СУБД. Когда SQL Server записывает данные на диск, эти данные заносятся в журнал транзакций как записанные. Когда SQL Server пытается восстановиться после отказа системы, эти блоки данных не будут восстановлены, потому что SQL Server считает, что они уже были записаны на диск. В случае отказа при этом типе конфигурации база данных будет повреждена.

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

SQL Server, как и почти все реляционные СУБД выполняет все записи на диск без буферизации и без кэширования. Независимо от размера доступного кэша файловой системы, SQL Server не станет его использовать, полностью отказываясь от кэша файловой системы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]