3. Система хранения данных
Ключевой задачей файлового сервера является
хранение больших объемов информации.
Эффективность и возможности системы хранения
данных сервера определяются совокупностью и
согласованностью аппаратных средств хранения
данных и возможностями операционной системы.
3.1 Аппаратные средства хранения данных
К аппаратным средствам системы хранения данных
относятся собственно накопители с носителями
информации и контроллеры их интерфейсов.
Устройства хранения классифицируются по
различным признакам:
Метод доступа:
- Устройства произвольного доступа (Random-Access Devices) -
накопители на гибких, жестких, магнитных,
оптических, магнитооптических дисках.
- Устройства последовательного доступа, обычно
ленточные (Tape Devices) - стримеры, кассетные или
бобинные. Для них характерна большая емкость
относительно недорогих сменных носителей и
большое время доступа.
Тип доступа:
- Чтение/запись (Read/Write) - дисковые устройства
оперативного доступа, для которых характерно
небольшое время выполнения операций как
считывания, так и записи.
- Только чтение (Read Only) - CD-ROM или магнитные диски с
защитой от записи.
- Устройства с быстрым чтением и относительно
долгим процессом записи - например,
магнитооптические устройства, требующие
предварительного стирания информации.
- Устройства с последовательной записью - многие
типы стримеров позволяют дописывать информацию
только в конец занятой области носителя (ранее
записанная информация, расположенная за текущей
областью записи, становится недоступной).
Сменяемость носителя:
- Фиксированный диск - винчестер, не
предполагающий оперативной смены.
- Накопители со сменными носителями - CD-ROM,
стримеры, магнитооптические устройства и тому
подобные. Смена носителя может быть как ручной,
так и автоматизированной (устройства Jukebox).
Данные на сервере хранятся в виде файлов, для
которых характерен большой разброс частоты
использования, размеров и требований по
ограничениям на время ожидания доступа. По
совокупности этих признаков можно выделить три
основные категории устройств хранения файлов:
- On-line - "всегда готов", устройства хранения
часто используемых файлов на фиксированных
дисках. Объем хранимых данных ограничен
возможностями подключения дисков (внутренних и
внешних) к серверу.
- Off-line - устройства хранения файлов на магнитных
лентах или сменных дисках, которые могут быть
установлены и смонтированы оператором по
требованию клиента. Объем хранимых данных
практически неограничен, но главный недостаток -
необходимость присутствия оператора и большое
время ожидания доступа.
- Near-line - "всегда поблизости", устройства
хранения на автоматически сменяемых и
монтируемых носителях (ленточные карусели, Jukebox и
прочие), занимающие среднее положение по времени
доступа и объему (довольно дорогое решение).
Хорошая сетевая операционная система должна
иметь возможности для обеспечения
автоматической миграции данных (Data Migration) с
устройств On-line на Off-line или Near-line и обратно с
учетом их объема и частоты использования.
Novell публикует следующие стандарты на хранение
и миграцию файлов:
Real Time Data Migration (RTDM): - автоматическая миграция
данных с жестких дисков On-line на системы Near-line.
High-Capacity Storage System (HCSS): - поддержка оптических
Jukeboxes.
Mass Storage Services (MSS): - координация распределенных
иерархических систем хранения.
Противоречащие друг другу требования к объему
хранимой информации, скорости доступа,
надежности и цене могут удовлетворяться
сочетанием различных классов устройств.
Интерфейсы
Из существующих интерфейсов внешних устройств
ST506/412, ESDI, SCSI и IDE, в настоящее время интерес
представляют только два последних.
SCSI
SCSI (Small Computer System Interface, произносится "скази")
- стандартный интерфейс шины системного уровня.
Он используется для подключения различных
периферийных устройств - винчестеров, CD-ROM,
стримеров, магнитооптических и других,
внутреннего и внешнего исполнения - к
компьютерам с различной архитектурой.
Первоначальная 8-битная версия SCSI сменилась
более эффективным интерфейсом SCSI-2, включающем
16/32-битные расширения (WIDE SCSI-2), скоростные (в FAST
SCSI-2 пропускная способность шины поднята с 4 до 10
Мбайт/с, менее популярный ULTRA - 20 Мбайт/с) и их
комбинации (FAST-WIDE SCSI-2 с максимальной пропускной
способностью 20/40 Мбайт/с и ULTRA-WIDE - 40/80 Мбайт/с).
Внедряется и SCSI-3 с параллельным,
последовательным и оптоволоконным интерфейсами,
обеспечивающий высокие скорости обмена и
широкие функциональные возможности. В настоящее
время наиболее популярны контроллеры и
устройства 8- и 16-битного SCSI-2, и в дальнейшем речь
пойдет именно о них. В принципе, эти устройства
совместимы и со старым SCSI-1, но их совместное
использование на одной шине неэффективно.
Дисковая подсистема с интерфейсом SCSI состоит из
хост-адаптера, связывающего шину SCSI с системной
или локальной шиной компьютера, и SCSI-устройств,
соединенных с хост-адаптером кабельным шлейфом.
В сервере может быть установлено до четырех
хост-адаптеров. На каждой шине SCSI может
присутствовать до 8 устройств, считая и
хост-адаптер. Каждое устройство имеет уникальный
идентификатор (SCSI ID 0-7): хост-адаптер обычно имеет
ID7, первый (загрузочный) жесткий диск - ID0. Сложные
устройства могут иметь до восьми подустройств со
своими номерами LUN (Logical Unit Number).
SCSI-устройства выпускаются как внутреннего, так и
внешнего исполнения. Внутренние устройства
соединяются с хост-адаптером 50-проводным (Wide SCSI -
68-проводным) плоским кабелем, внешние -
экранированным кабелем с 50-контактным разъемом
"CENTRONICS" для 8-битного или 68-контактным
миниатюрным разъемом для 8/16-битного SCSI-2.
Существует две версии SCSI, различающиеся по типу
электрических сигналов: линейные (Single ended) -
обычные для PC-техники - и дифференциальные
(Differential) - малораспространенные, допускающие
большую суммарную длину шлейфа. Их кабели и
разъемы внешне одинаковы, но взаимной
совместимости устройств нет.
Обычно внутренний и внешний шлейфы адаптера
являются двумя частями одной SCSI-шины.На крайних
устройствах шины (и только на них) должны быть
установлены и включены терминаторы (внутренние
или внешние), в противном случае работа устройств
будет неустойчивой. На хост-адаптере терминаторы
должны включаться при использовании только
одного (внутреннего или внешнего) шлейфа,
современные адаптеры обычно имеют
автоматическое управление терминаторами.
SCSI-2 предусматривает возможность
самостоятельной работы устройств: полученные
цепочки команд они могу выполнять в
предварительно оптимизированном порядке,
отключившись от шины, используя собственные
внутренние буферы. Два устройства на одной
SCSI-шине могут обмениваться массивами данных без
загрузки системной шины и процессора.
Все SCSI-устройства должны предварительно
конфигурироваться. Параметры конфигурирования
включают:
- SCSI ID - адрес 0-7, уникальный для каждого
устройства на шине.
- SCSI Parity - контроль паритета: если хоть одно
устройство на шине его не поддерживает, следует
отключить на всех устройствах.
- Termination - включение терминаторов (только на
крайних устройствах шлейфа).
- Terminator Power - питание активных терминаторов,
должно быть включено хотя бы на одном устройстве.
- SCSI Synchronous Negotiation - согласование скорости
синхронного обмена, обеспечивающего более
высокую производительность. Если хоть одно
устройство на шине не поддерживает синхронный
обмен, на хост-адаптере согласование необходимо
запретить. При этом, если обмен будет инициирован
синхронным устройством, хост-адаптер поддержит
этот режим.
- Start on Command (Delayed Start) - разрешение запуска
двигателя только по команде от хост-адаптера.
Позволяет снизить пик нагрузки блока питания,
поскольку устройства будут запускаться
последовательно.
- Enable Disconnection - позволяет устройствам отключаться
от шины при неготовности данных, освобождая ее
для других операций (используется при нескольких
периферийных устройствах на шине).
Современные хост-адаптеры являются
интеллектуальными устройствами, способными
разгрузить центральный процессор от рутинных
операций. Они обычно используют прямой доступ к
памяти (DMA) и управление шиной (Bus Mastering). Тип
системной шины адаптера определяет его
пропускную способность и разрядность шины
адреса, используемой в режиме Bus-Master. Для
ISA-адаптеров 20-битное ограничение адреса не
позволяет адресовать память свыше 16 Мбайт, что
для сервера не так уж и много. Хорошим решением
является использование шин PCI, EISA, MCA; VLB
используется редко. На некоторых системных
платах имеются встроенные SCSI-адаптеры,
реализующие преимущества локального
подключения.
Плата дискового сопроцессора Disk Coprocessor Board (DCB)
разработки Novell является одним из первых
интеллектуальных хост-адаптеров. Для разгрузки
центрального процессора в DCB использовался
собственный процессор 80188. Современные адаптеры
превосходят его по производительности, но в дань
уважения Novell продолжает программно поддерживать
этот раритет.
IDE
IDE (Integrated Device Electronics) - интерфейс устройств со
встроенным контроллером, используется для
подключения устройств внутреннего исполнения:
дисковых накопителей и CD-ROM. Наибольшее
распространение получила 16-битная версия,
называемая также ATA (AT Attachment) или AT-Bus. Новые версии
- EIDE (Enhanced IDE), Fast ATA , Fast ATA-2 допускают более высокие
скорости обмена (свыше 10 Мбайт.с) и отодвигают
ограничение на максимальный объем диска с 504
Мбайт до 7.88 Гбайт.
Малораспространные варианты: XT-IDE - 8-битный
интерфейс с 40-проводным шлейфом, с ATA несовместим;
MCA IDE - 72-проводной интерфейс для 16-битной шины MCA.
К одной шине IDE может подключаться не более двух
устройств, одно из которых с помощью
переключателей (джамперов) назначается ведущим
(Master), другое - ведомым (Slave). В отличие от SCSI,
устройства на одной шине могут работать только
поочередно. В системе может быть до двух шин IDE,
доступных для подключения жестких дисков.
Дополнительный IDE-интерфейс, имеющийся на
звуковых картах, обычно может использоваться
только для подключения CD-ROM (жесткие диски BIOS на
нем искать не будет, хотя возможно настроить
драйвер NetWare и на его использование;
целесообразность установки звуковой карты на
выделенном сервере весьма сомнительна).
Скорость передачи данных по шине может
ограничиваться как накопителем, так и
контроллером. Для обмена обычно используется PIO
(Programming Input/Output). PIO Mode 3 допускает скорость до 11.1
Мбайт/с, PIO Mode 4 - 16.6 Мбайт/с. Для сервера желательна
поддержка высокоскоростных режимов.
Контроллер IDE в современных платформах обычно
встраивается в системную плату и подключается к
высокопроизводительной локальной шине.
Существуют также и контроллеры для шин ISA, EISA, VLB,
PCI, некоторые модели имеют аппаратный кэш и
средства дублирования (отражения) дисков.
Применение ISA-адаптеров для сервера нежелательно
по причине их низкой пропускной способности.
Делая выбор между интерфейсами дисковой системы
SCSI и IDE, следует принимать во внимание следующие
факторы:
- цена SCSI-диска теперь несущественно превышает
цену аналогичного IDE-устройства, однако надо
учитывать внушительную цену SCSI-контроллера
(хост-адаптера);
- производительность одиночных устройств IDE и SCSI
практически одинакова, но при одновременном
использовании нескольких устройств суммарная
производительность SCSI-системы существенно выше;
- высокая эффективность дисковой системы в
сервере (как в многозадачной системе)
обеспечивается использованием DMA (и Bus Mastering) и
интеллектуальностью адаптера, что типично для SCSI
и редко встречается в IDE-системах;
- ассортимент устройств IDE ограничен жесткими
дисками и накопителями CD-ROM, только внутреннего
исполнения и только для IBM PC-совместимых
компьютеров. Интерфейс SCSI имеют винчестеры,
стримеры, магнитооптические устройства, CD-ROM,
дисковые массивы и другие устройства как
внутреннего, так и внешнего исполнения,
производимые для компьютеров любых архитектур;
- наращиваемость системы с IDE ограничена четырьмя
жесткими дисками, вместе с CD-ROM число устройств не
может превышать шести. Для SCSI возможно
подключение до 4x7=28 устройств, в число которых
могут входить и сложные устройства с
подустройствами;
- теоретически возможно сосуществование SCSI и IDE в
одном сервере, но при этом вероятны и некоторые
сюрпризы несовместимости (конфликты) конкретных
моделей контроллеров.
Устройства хранения информации
Накопители на жестких
магнитных дисках
Накопители на жестких магнитных дисках (Hard Disk
Drive, HDD) являются основными устройствами
оперативного хранения информации. Для
современных одиночных накопителей характерны
объемы от сотен мегабайт до нескольких гигабайт
при времени доступа 5-15 мс и скорости передачи
данных 1-10 Мбайт/с.
Относительно корпуса сервера различают
внутренние и внешние накопители.
Внутренние накопители существенно дешевле, но их
максимальное количество ограничивается числом
свободных отсеков корпуса, мощностью и
количеством соответствующих разъемов блока
питания сервера. Установка и замена обычных
внутренних накопителей требует выключения
сервера, что в некоторых случаях недопустимо.
Внутренние накопители с возможностью
"горячей" замены (Hot Swap) представляют собой
обычные винчестеры, установленные в специальные
кассеты с разъемами. Кассеты обычно вставляются
в специальные отсеки со стороны лицевой панели
корпуса, конструкция позволяет вынимать и
вставлять дисководы при включенном питании
сервера. Для стандартных корпусов существуют
недорогие приспособления (Mobile Rack),
обеспечивающие оперативную съемность
стандартных винчестеров.
Внешние накопители имеют собственные корпуса и
блоки питания, их максимальное количество
определяется возможностями интерфейса.
Обслуживание внешних накопителей может
производиться и при работающем сервере, хотя
может требовать прекращения доступа к части
дисков сервера.
Для больших объемов хранимых данных применяются
блоки внешних накопителей - дисковые массивы и
стойки, представляющие собой сложные устройства
с собственными интеллектуальными контроллерами,
обеспечивающими, кроме обычных режимов работы,
диагностику и тестирование своих накопителей.
Более сложными и надежными устройствами
хранения являются RAID-массивы (Redundant Array of Inexpensive
Disks - избыточный массив недорогих дисков). Для
пользователя RAID представляет собой один (обычно
SCSI) диск, в котором производится одновременная
распределенная избыточная запись (считывание)
данных на несколько физических накопителей
(типично 4-5) по правилам, определяемым уровнем
реализации (0-10). Например, RAID Level 5 позволяет при
считывании исправлять ошибки и осуществлять
замену любого диска без остановки обращения к
данным.
CD-ROM
Устройства считывания компакт-дисков CD-ROM
расширяют возможности системы хранения данных
NetWare. Существующие накопители обеспечивают
скорость считывания от 150 кбайт/с до 300/600/900/1500
Кбайт/c для 2-,4-,6- и 10-скоростных моделей при
времени доступа 200-500 мс. NetWare позволяет
монтировать компакт-диск как сетевой том,
доступный пользователям для чтения. Объем тома
может достигать 682 Мбайт (780 Мбайт для Mode 2).
Устройства CD-ROM выпускаются с различными
интерфейсами, как специфическими (Sony, Panasonic, Mitsumi),
так и общего применения: IDE и SCSI. Сервер NetWare
обслуживает только CD-ROM с интерфейсами SCSI, новые
драйверы существуют и для IDE; устройства со
специфическими интерфейсами могут
использоваться только в DOS для инсталляции
системы. С точки зрения повышения
производительности предпочтительнее
использование CD-ROM SCSI, однако они существенно
дороже аналогичных IDE-устройств. В сервере с
дисками SCSI применение CD-ROM с интерфейсом IDE может
оказаться невозможным из-за конфликтов
адаптеров.
Во избежание зависания процесса
инсталляции сервера с CD, его привод нежелательно
подключать к тому же контроллеру, который будет
обслуживать диск с системным томом SYS:. CD-ROM
внутреннего исполнения не рекомендуется
устанавливать непосредственно над жестким
диском из-за сильного магнитного поля,
способного разрушить данные на винчестере,
которое возникает при считывании CD.
Стримеры
Устройства хранения данных на магнитной ленте
(Tape Drive) - стримеры - являются распространенными
средствами архивации данных. Они относятся к
категории устройств хранения Off-Line, для них
характерно очень большое время доступа,
обусловленное последовательным методом доступа,
средняя скорость обмена и большая емкость
носителя - от сотен мегабайт до нескольких
гигабайт. Носителем информации обычно являются
картриджи с лентой шириной 1/4 дюйма (6.25 мм) -
Quarter-Inch Cartridge, QIC. Широко распространены стандарты
QIC 40 и QIC 80, имеющие продольную плотность записи
10000 бит/дюйм на 20 дорожках и 14700 бит/дюм на 28
дорожках соответственно, позволяющие хранить
сотни Мбайт на одной ленте. Большие объемы
обеспечивают стандарты QIC 1350 и QIC 2100 - 1.35 и 2.1 Гбайт
соответственно. Девятидорожечные ленты шириной
1/2 дюйма (12,7 мм) типичны для накопителей мини- и
больших (Mainframe) компьютеров.
Стримеры могут иметь специфические интерфейсы,
требующие специальных адаптеров; некоторые
дешевые модели подключаются к стандартному
контроллеру накопителей на гибких дисках вместе
с дисководами; существуют устройства,
подключаемые к паралельному порту. NetWare
поддерживает только стримеры с интерфейсом SCSI,
что объясняется его преимуществом в
производительности системы в целом.
Использование стримеров с другими интерфейсами
может оказаться невозможным из-за отсутствия
соответствующих драйверов.
NetWare поддерживает ленточные устройства как
средства архивирования и востановления данных,
на их использование ориентирована серверная
утилита SBACKUP.
Ленточные устройства имеют существенный
недостаток - большие затраты времени на
обслуживание:
- подготовка картриджа к использованию -
тестирование поверхности и форматирование
ленточных томов - весьма длительная процедура,
занимающая время, исчисляемое часами.
Приобретение предварительно отформатированных
картриджей (Preformatted) позволяет экономить время
(конечно, при условии совпадения форматов);
- процесс записи и считывания длителен из-за
последовательного доступа и невысоких скоростей
движения носителя;
- при длительном хранении ленты требуют
периодической перемотки для снятия внутренних
напряжений. Кроме того, при хранении необходимо
выдерживать нормальные условия по температуре и
влажности;
- основное преимущество стримеров - низкая
удельная стоимость хранения больших массивов
информации.
Магнитооптические
устройства
Магнитооптические устройства - Magneto-Optical Drives, MOD,
- используют лазерный луч для записи информации
на сменный магнитный носитель, весьма устойчивый
к воздействию внешних магнитных полей и
некритичный к температуре и влажности. Емкость
одного носителя составляет от сотен мегабайт до
нескольких гигабайт. Устройства обеспечивают
скорость считывания и время доступа,
приближающиеся к параметрам винчестера, но
существенно более длительный процесс записи.
Магнитооптические устройства могут
монтироваться как сменяемый том или
использоваться в качестве устройств архивации
(альтернатива стримерам) или миграции данных (HCSS).
Приводы с автоматической сменой носителя (Jukebox)
являются примером устройств хранения класса
Near-Line и могут с успехом использоваться для
создания массивов данных с объемом, достигающим
терабайта, а также для автоматизированного
резервного архивирования сетевых дисков.
Общепринятым интерфейсом MOD для серверов
является SCSI, применение устройств, подключаемых
к параллельным портам для сервера нежелательно
из-за большой загрузки процессора при обмене с
ними и может оказаться невозможным из-за
отсутствия драйверов NetWare.
3.2 Дисковая подсистема сервера NetWare
NetWare использует собственные методы организации
дисков, создавая на них разделы, отличающиеся от
разделов DOS. ОС имеет специальные средства для
повышения надежности хранения и суммарной
эффективности параллельного обслуживания
множества запросов клиентов, приложений и
внутренних процессов системы.
Средства повышения надежности хранения.
Надежность хранения информации на физическом
уровне обеспечивается контрольным считыванием
после записи (Read after Write Verify) в сочетании с
"горячим резервированием" (Hot Fix) и
дублирование дисков.
- Контрольное считывание может быть реализовано
аппаратно (средствами дискового контроллера) или
программно. Аппаратный контроль с точки зрения
производительности предпочтительнее, однако при
этом остается уязвимым тракт память - контроллер.
Для специальных дисков, реализующих верификацию
аппаратно на уровне устройства, включение
системной верификации обычно излишне.
- Горячее резервирование использует область Hot Fix
Area, определяемую при создании раздела NetWare.
Дефектные участки поверхности носителя,
выявленные по возникновении ошибки при
считывании или верификации после записи,
переназначаются в резервную область и в
дальнейшем до переформатирования диска не
используются.
- Дублирование дисков, точнее - разделов
одинакового размера, подразделяется на
отражение (Disk Mirroring) и дуплексирование (Disk Duplexing).
При использовании дублирования запись
производится одновременно на два и более
(максимум - 8) физических накопителя, подключенных
в случае отражения к одному контроллеру, в случае
дуплексирования - к различным контроллерам. При
чтении запросы распределяются между отраженными
дисками, что попутно сокращает время доступа к
данным. Согласованность данных (синхронность) на
дублированных носителях проверяется при
монтировании их томов. B NetWare 4.x синхронность
дисков проверяется еще и периодически во время
обычной работы сервера. Отражение спасает данные
только в случае отказа самого накопителя,
дуплексирование резервирует весь дисковый
тракт. Дуплексированные диски работают
производительнее отраженных за счет
параллельной работы каналов при записи. Для
оператора консоли оба вида дублирования дисков
называются отражением.
- Применение накопителей RAID разгружает процессор
сервера от задач повышения надежности хранения
информации, во многих случаях снимая
актуальность применения отражения дисков (RAID Level
1 эквивалентен отражению двух дисков).
Обеспечение надежности на физическом уровне
дополняется средствами диагностики и
восстановления логической структуры томов
(утилита VREPAIR.NLM) и резервного копирования.
Средства повышения эффективности доступа.
Высокая эффективность файл-сервера NetWare
обеспечивается системой кэширования файлов и
каталогов, автоматического индексирования
больших файлов, хэширования каталогов и
лифтового поиска при обслуживании групп
запросов к дискам. Система ориентирована на
повышение суммарной эффективности
удовлетворения множества запросов множества
клиентов с оптимизацией операций с физическими
устройствами.
- Для ускорения доступа к файлам и каталогам в
оперативной памяти сервера отводится пул
кэш-буферов, в которые помещаются данные,
считанные с диска или предназначенные для записи
на диск. Большой объем пула обеспечивает
достаточно высокую вероятность нахождения
требуемых данных в кэш-буфере при весьма
вероятном повторном обращении. При
последовательном чтении соседних блоков файлов
система может выполнять упреждающее считывание
(Read Ahead), помещая в кэш данные "про запас".
Менеджер кэша следит за использованием буферов,
освобождая блоки, к которым давно не было
обращений, управляет записью данных из
модифицированных кэш-буферов (Dirty Cache Buffers) на
диск, передает запросы на обращения к дискам в
лифтовую систему поиска.
- Для ускорения доступа к большим файлам ОС
автоматически индексирует любой файл прямого
доступа, имеющий более 64 элементов в таблице
размещения, строя индекс турбо-FAT. Поскольку это
построение занимает определенное время, а
турбо-FAT может впоследствии пригодиться для
нового доступа к тому же файлу, существует время
жизни индекса после закрытия индексированного
файла, по исчерпании которого занимаемая им
память может быть выделена для другого файла.
- Для ускорения поиска файла в каталоге
применяется хеширование каталогов (Directory Hashing) -
метод индексирования каталога, позволяющий
находить требуемое вхождение с первой попытки с
вероятностью 0.95 (в отличие от обычного
последовательного перебора таблицы вхождений
каталога).
- Лифтовый поиск (Elevator Seeking) минимизирует затраты
времени на перемещение головок дисковода,
вносящие наибольшую задержку в суммарное время
доступа к данным. Запросы к диску от множества
процессов, обслуживаемых сервером,
выстраиваются в очередь и обслуживаются по мере
приближения головок к требуемым участкам,
подобно лифту, подбирающему и выпускающему
пассажиров по пути на разных этажах.
|