Системы хранения данных начального уровня

22 сентябрь, 2003 - 23:00Владимир Савяк
Еще несколько лет назад дорогие специальные системы хранения данных на жестких дисках были ориентированы в основном на критически важные корпоративные приложения или некоторые специфические задачи. Сегодня же благодаря бурному развитию концепции NAS (Network Attached Storage) и ряда других решений на базе ATA-винчестеров, подобные системы начального уровня становятся объектом внимания предприятий среднего масштаба, что особенно важно для очень чувствительного к цене украинского рынка.

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

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

1. Дополнительные диски невозможно или нерентабельно установить в сервер (обычно либо из-за отсутствия места в корпусе, либо высокой цены на оригинальные диски, либо же немассовой конфигурации ОС и платформы -- например, Silicon Graphics или Compaq Alpha Server, Mac и др.).

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

3. Невозможно получить качественное решение для хранения данных в рамках стандартного сервера. Внешняя система в этом случае позволяет реализовать RAIS (Redundant Array of Independent Servers -- отказоустойчивый массив независимых серверов). На нем хранятся все, в том числе и системные данные, к которым обращаются обрабатывающие их серверы. При этом предусмотрен запасной сервер, подменяющий вышедший из строя. Этот подход в какой-то степени напоминает кластеризацию, но здесь не используется специализированное ПО, и приложения автоматически не мигрируют.

Классификация систем хранения данных -- DAS/SAS, NAS, SAN
Системы хранения данных начального уровня
Системы хранения данных начального уровня
Системы хранения данных начального уровня
Общепринятая классификация систем хранения данных основывается на принципе организации доступа к ним.


SAS (Server Attached Storage)
-- накопитель, подсоединенный к серверу. Иногда используют термин "накопитель, подсоединенный "напрямую""-- DAS (Direct Attached Storage).

Основное преимущество накопителя, подсоединенного к серверу, по сравнению с другими вариантами -- низкая цена и высокое быстродействие.


NAS (Network Attached Storage)
-- накопитель, подсоединенный к сети.

Главным преимуществом такого решения является быстрота развертывания и продуманная организация доступа к файлам.


SAN (Storage Area Network) -- сеть хранения данных. Наиболее дорогое решение, вместе с тем обеспечивающее немало преимуществ -- независимость топологии SAN от систем хранения данных и серверов, удобное централизованное управление, отсутствие конфликта с трафиком LAN/WAN, удобное резервирование и восстановление данных без загрузки локальной сети и серверов, высокие быстродействие, масштабируемость, гибкость, готовность и отказоустойчивость.


Системы хранения данных, или автономные накопители

Системы хранения данных начального уровня
Рис. 1. Наиболее распространенная схема дисковой системы хранения данных с одним контроллером
Безусловно, накопителем или системой хранения данных можно называть очень много различных устройств. Но коль скоро речь у нас пойдет о дисковых системах, обеспечивающих хранение информации и доступ к ней, мы будем подразумевать под термином "накопитель" именно их. В общем случае они состоят из жестких дисков, контроллера ввода/вывода и объединяющей системы. Диски, как правило, поддерживают "горячую замену", т. е. их можно подключать и отключать "на лету", без выключения накопителя. Это дает возможность заменить вышедший из строя винчестер без каких-либо неприятностей для пользователя. Основной и резервный блоки питания накопителя имеют повышенную надежность и также допускают "горячую замену". Да и контроллеров ввода/вывода иногда используют два. Схему типичной дисковой системы хранения данных с одним контроллером можно увидеть на рис. 1.

Контроллер дисковой системы хранения данных является ее центром. Он отвечает за ввод/вывод данных внутри системы и на внешние каналы, а также за организацию хранения и доступа к информации. Для связи с внешним миром контроллеры накопителей обычно используют интерфейсы SCSI, Fibre Channel или же Ethernet.

В зависимости от предназначения системы контроллеры могут реализовывать различную логику работы и применять различные протоколы обмена данными. Они предоставляют для систем пользователей данные на блочном уровне, как винчестеры, или же файловые сервисы по протоколам NFS, CIFS, а также Network File System, Common Internet File System подобно файловым серверам (см. врезку "Файловые протоколы в NAS -- CIFS, NFS, DAFS"). Такой контроллер обычно поддерживает стандартные уровни RAID для увеличения быстродействия системы и обеспечения отказоустойчивости.

Файловые протоколы в NAS -- CIFS, NFS, DAFS

CIFS (Common Internet File System) -- это стандартный протокол, который обеспечивает доступ к файлам и сервисам на удаленных компьютерах (в том числе и в Internet). Протокол использует клиент-серверную модель взаимодействия.

Клиент создает запрос к серверу на доступ к файлам или передачу сообщения программе, которая находится на сервере. Сервер выполняет запрос клиента и возвращает результат своей работы. CIFS -- это открытый стандарт, разработанный на основе SMB-протокола (Server Message Block Protocol) Microsoft, который традиционно использовался в локальных сетях с ОС Windows для доступа к файлам и печати. В отличие от последнего, CIFS ориентирован на применение в том числе и в распределенных сетях -- например, учитывает возможность возникновения больших тайм-аутов.

Для транспортировки данных CIFS использует TCP/IP. Он обеспечивает функциональность, похожую на FTP (File Transfer Protocol), но предоставляет клиентам улучшенный (похожий на прямой) контроль файлов. Он также позволяет разделять доступ к файлам между клиентами, применяя блокирование и автоматическое восстановление связи с сервером в случае сбоя сети.

NFS (Network File System) -- стандарт IETF, который включает распределенную файловую систему и сетевой протокол. NFS был разработан компанией Sun и первоначально использовался только в Unix-системах. Позже реализации клиентской и серверной частей распространились и на другие системы.

NFS, как и CIFS, основан на клиент-серверной модели взаимодействия. Он обеспечивает доступ к файлам на удаленном компьютере (сервере) для записи и считывания так, как если бы они находились на компьютере пользователя. В ранних версиях NFS для транспортирования данных применялся UDP-протокол, в современных -- TCP/IP. Для работы NFS в Internet компанией Sun был разработан протокол WebNFS, который использует расширения функциональности NFS для корректной работы во Всемирной Сети.

DAFS (Direct Access File System) -- это стандартный протокол файлового доступа, который базируется на NFSv4. Он позволяет прикладным задачам передавать данные в обход операционной системы и ее буферного пространства напрямую к транспортным ресурсам, сохраняя семантику файловых систем. DAFS использует преимущества новейших технологий передачи данных по схеме "память--память". Он обеспечивает высокие скорости файлового ввода/вывода, минимальную загрузку CPU и всей системы благодаря значительному уменьшению количества операций и прерываний, которые обычно необходимы при обработке сетевых протоколов. Особенно эффективным является использование аппаратных средств поддержки VI (Virtual Interface).

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


Почему ATA?

Сегодня разница в стоимости единицы объема больших ATA- и SCSI-дисков более чем шестикратна, и такое соотношение вполне оправдано. Дорогие диски с интерфейсом SCSI предназначены прежде всего для корпоративных информационных систем и обычно имеют более высокие показатели быстродействия при обработке большого количества запросов. В них используются более надежные компоненты, их лучше тестируют, да и ответственность производителя за эти устройства значительно выше.

Системы хранения данных начального уровня
Рис. 2. Схема накопителя с ATA-дисками и интерфейсом SCSI
Но если стоимость данных не столь велика или необходимо только промежуточное устройство при их резервировании, зачем платить в шесть раз больше? Учитывая, что выход из строя одного из дисков массива не является критичным, вполне допустимо использовать накопитель с ATA-дисками. Разумеется, существует ряд противопоказаний по применению ATA-дисков в больших системах хранения данных, но есть также и ряд приложений, для которых они прекрасно подходят.

Наибольшее распространение IDE-устройства получили в NAS-системах начального уровня. При использовании двух или четырех дисков, организованных в массив RAID 1 или 0+1, вероятность выхода из строя всей системы приемлемо мала, а быстродействия при этом хватает "с головой" -- файловые серверы начального уровня выполняют не слишком много дисковых операций ежесекундно, а потоки данных ограничены внешними интерфейсами Fast Ethernet или Gigabit Ethernet.

Там, где необходим блочный доступ к данным при минимальной стоимости решения и количество операций за единицу времени не является критичным параметром, используют системы с внешним параллельным SCSI- или Fibre Channel-интерфейсом и ATA-дисками внутри (рис. 2).

Системы хранения данных начального уровня
Рис. 3. ATA-to-ATA-устройство для хранения данных SR-2000
Ведущие производители сегодня предлагают ATA-диски, близкие по всем характеристикам, в том числе и времени наработки на отказ, к промышленным SCSI-дискам. Вместе с тем их стоимость становится сопоставимой и, соответственно, применение ATA-дисков обеспечивает лишь небольшой выигрыш в цене накопителей.

Для серверов начального уровня и рабочих станций, на которых хранятся достаточно важные данные, использование дешевых PCI ATA-контроллеров, как показывает практика, не всегда дает желаемый результат в силу их относительной примитивности и небольшой функциональности. Применение же дорогих внешних накопителей не всегда оправдано. В этом случае можно воспользоваться АТА-to-АТА-устройством, которое является уменьшенной копией внешней дисковой системы хранения данных и рассчитано всего на два диска с интерфейсом АТА. Однако оно имеет достаточно качественный встроенный контроллер и поддерживает "горячую замену" дисков (рис. 3).


Serial ATA -- новое дыхание ATA-интерфейса

С появлением интерфейса Serial ATA систем хранения данных на ATA-дисках должно стать больше. Об этом говорят практически все производители накопителей начального уровня. Сегодня их новые модели уже оснащаются новым интерфейсом. Чем же интересен Serial ATA-интерфейс для производителей систем хранения данных?

Он поддерживает набор инструкций Native Command Queuing (конвейеризации команд) -- контроллер анализирует запросы ввода/вывода и оптимизирует очередность их выполнения. Правда, в отличие от традиционной Native Command Queuing в SCSI-накопителях, которая обеспечивала очередь до 256 команд, в Serial ATA будет реализована поддержка очереди до 32 команд. "Горячая замена" Serial ATA-дисков, которая ранее требовала тех или иных технических ухищрений, теперь прописана непосредственно в стандарте, что позволит создавать корпоративные решения достаточно высокого уровня. Немаловажен и новый конструктив: кабель в новом интерфейсе стал круглым, а его коннектор -- маленьким и узким, что облегчает проектирование и сборку систем.

В новых версиях быстродействие Serial ATA повысится, и можно не сомневаться, что доля ATA-решений в системах хранения начального уровня будет увеличиваться именно за счет новых дисков с этим интерфейсом, в то время как развитие Parallel ATA будет замедляться, что и наблюдается в последнее время.

RAID (Redundant Array of Independent Disks)

В накопителях начального уровня обычно используют уровни RAID 0, 1, 5 и комбинации из них.

RAID 0

Системы хранения данных начального уровня
Дисковый массив без отказоустойчивости с чередованием (Striped Disk Array without Fault Tolerance). В этом случае данные разбиваются на блоки, параллельно записываемые на разные диски, которые совместно участвуют в каждой операции ввода/вывода.

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

RAID 1

Системы хранения данных начального уровня
Дисковый массив с дублированием. "Зеркалирование" (mirroring) -- традиционный способ повышения надежности дискового массива небольшого объема. В простейшем варианте используется два диска, на которые записывается одна и та же информация. В случае отказа одного из них остается дубль, который продолжает работать в прежнем режиме.

Преимущества -- простота реализации и восстановления массива данных, а также достаточно высокое быстродействие для приложений с большой интенсивностью запросов. Недостатки -- невысокая скорость передачи данных при двойной стоимости на единицу объема, поскольку имеет место 100%-ная избыточность. При большем количестве дисков вместо RAID 1 можно использовать RAID 0+1 или RAID 10, комбинации RAID 0 и RAID 1, которые позволяют достичь лучших показателей быстродействия и надежности системы.


RAID 5

Системы хранения данных начального уровняОтказоустойчивый массив независимых дисков с распределенной четностью (Independent Data disks with distributed parity blocks).

Данные разбиваются на блочном уровне. Каждый блок данных записывается на определенный диск и может быть прочитан отдельно. Для блоков данных подсчитывается четность и распределяется циклически по всем дискам массива. Если операции записи спланировать должным образом, то становится возможной параллельная обработка до N/2 блоков, где N -- число дисков в группе. Это увеличивает быстродействие, а для получения отказоустойчивого массива при этом используется всего один избыточный диск.

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


Serial Attached SCSI

SCSI-интерфейс имеет высокую скорость и надежность, но подобные решения достаточно дороги. SAS (Serial Attached SCSI) является интересным развитием SCSI и, по всей вероятности, также будет применяться в недорогих системах начального и среднего уровня.

Сегодня многие производители систем хранения данных используют при проектировании относительно простых накопителей интерфейс Ultra 320 SCSI. Это поколение параллельного SCSI-интерфейса на данный момент последнее в линейке. Накопители же с ранее заявленным Ultra 640 SCSI-интерфейсом, скорее всего, не будут массово производиться либо вообще сойдут со сцены. На недавней встрече с партнерами компания Seagate, лидер в производстве винчестеров для систем корпоративного уровня, объявила о том, что новые модели дисков для систем высокого уровня будут оснащаться интерфейсом Fibre Channel, а для меньших корпоративных систем -- Serial SCSI. При этом не исчезнет сразу и обычный параллельный Ultra 320 SCSI. Его окончательная замена ожидается не ранее чем через пять лет.

Serial SCSI сочетает в себе некоторые особенности Serial ATA и Fibre Channel. Он был разработан на основе спецификаций последовательного ATA и усовершенствован. Так, повысился уровень сигнала, что позволяет соответственно увеличить предельную длину четырехжильного кабеля до 10 м. Этот двухканальный интерфейс "точка--точка" работает в режиме полного дуплекса, может обслуживать до 4096 дисковых устройств в домене и на уровне протокола поддерживает стандартный набор команд SCSI.

Вместе с тем, несмотря на все свои преимущества, Serial Attached SCSI вряд ли вытеснит обычный параллельный интерфейс в ближайшее время. В мире корпоративных решений разработки ведутся очень тщательно и, естественно, более длительно, чем для настольных систем. Да и уходят старые технологии не очень быстро, так как их жизненный цикл составляет несколько лет. Первые устройства с интерфейсом SAS должны появиться на рынке в 2004 году. Естественно, сначала это будут в основном диски и PCI-контроллеры, но достаточно быстро появятся и системы хранения данных. Сравнительные характеристики интерфейсов приведены в таблице "Сравнение современных дисковых интерфейсов".


SAN -- сети хранения данных

SAN (см. врезку "Классификация систем хранения данных -- DAS/SAS, NAS, SAN") на основе Fibre Channel позволяют решать практически любые задачи по хранению данных и доступу к ним. Но есть несколько недостатков, негативно влияющих на распространение этих технологий, прежде всего -- высокая стоимость решений и сложность построения географически распределенных систем.

Вокруг использования в SAN IP-протокола в качестве транспорта для SCSI-команд и данных идет ожесточенный спор, но все понимают, что решения IP Storage обязательно найдут свою нишу в сфере систем хранения данных, и ждать этого недолго.

В рамках совершенствования сетевых технологий хранения данных в Internet Engineering Task Force (IETF) была организована рабочая группа и форум IP Storage (IPS) по направлениям:

FCIP -- Fibre Channel over TCP/IP, туннельный протокол, созданный на базе TCP/IP и предназначенный для соединения географически удаленных FC SAN без какого-либо воздействия на FC- и IP-протоколы;

iFCP -- Internet Fibre Channel Protocol, протокол для соединения FC-систем или сетей хранения данных на базе TCP/IP, использующий IP-инфраструктуру совместно или вместо коммутационных и маршрутизирующих элементов FC;

iSNS -- Internet Storage Name Service, протокол поддержки имен накопителей;

iSCSI -- Internet Small Computer Systems Interface, протокол на основе TCP/IP, разработанный для взаимодействия и управления системами хранения данных, серверами и клиентами.

Самым бурно развивающимся и интересным из перечисленных направлений является iSCSI, который 11 февраля 2003 года стал официальным стандартом. Его развитие должно существенно повлиять на распространение SAN в малом и среднем бизнесе, в силу того что сети хранения данных станут значительно более дешевыми. Что же касается использования iSCSI в Internet, то сегодня здесь уже неплохо прижился FCIP, и конкуренция с ним будет достаточно острой, но за счет интегрированного подхода она должна сработать на пользу iSCSI.

Благодаря технологиям IP Storage, в том числе iSCSI, в сетях хранения данных появились новые возможности по построению географически распределенных систем накопителей. Кроме того, новые системы хранения данных, для которых iSCSI будет "родным" протоколом, обеспечат массу других преимуществ, таких, как поддержка QoS, высокий уровень безопасности, возможность задействовать в обслуживании сетей специалистов по Ethernet.

Одной из очень интересных особенностей iSCSI является то, что для передачи данных на накопителе с интерфейсом iSCSI можно использовать не только носители, коммутаторы и маршрутизаторы существующих сетей LAN/WAN, но и обычные сетевые адаптеры Fast Ethernet или Gigabit Ethernet на стороне клиента. Но на самом деле в связи с некоторыми трудностями лучше применять специализированное оборудование, что в результате приведет к тому, что стоимость решений начнет догонять традиционные Fibre Channel SAN.

Бурное развитие сетей хранения данных стало основой формирования концепции World Wide Storage Area Network. WWSAN предусматривает создание инфраструктуры, которая обеспечит высокоскоростной доступ и хранение данных, распределенных по всему миру.


Сравнение современных дисковых интерфейсов

Параметры Serial ATA SCSI SAS FC
Количество поддерживаемых устройств 16 16 4096 224
Предельная длина кабеля, м 1 12 10 Медь: 30
Оптика: 10 000*
Поддерживаемые топологии Точка--точка Шина Точка--точка Кольцо**
Точка--точка
Быстродействие, MBps 150, 300 320 150, 300 100, 200, 400
Полный дуплекс - - + +
Интерфейсы ATA, SCSI SCSI ATA, SCSI Независимый***
Поддержка двухпортовых устройств - - + +

* Стандарт регламентирует расстояние до 10 км для одномодового оптоволокна, существуют реализации для передачи данных на расстояние более 100 км.
** В рамках внутренней топологии кольца работают концентраторы и коммутаторы FC, также существуют реализации коммутаторов, которые обеспечивают соединение точка--точка любых устройств, подсоединенных к ним.
*** Существуют реализации устройств для интерфейсов и протоколов SCSI, FICON, ESCON, TCP/IP, HIPPI, VI.