Журнал:

Дисковые системы хранения

Оглавление обзора

Немного истории

Идея объединения нескольких сравнительно дешевых жестких дисков в одно логическое устройство с целью повышения общей емкости, быстродействия и надежности была высказана еще в конце 80-х годов прошлого века. Более точно, впервые публично она была изложена в 1987 году в ставшей с тех пор классической статье калифорнийского университета Беркли под названием «A Case for Redundant Arrays of Inexpensive Disks (RAID)» («Метод использования избыточного массива недорогих дисков»). Но до недавнего времени подобные системы, получившие название RAID-массивов, в основном были частью очень дорогостоящих компьютерных комплексов, предназначенных для хранения больших объемов критически важной информации (в качестве типичного примера обычно приводят банковские серверы). Проблема состояла в том, что для обеспечения действительно надежной и эффективной работы RAID-систем, отвечающих предъявляемым к ним требованиям, приходилась использовать не дешевые, а, напротив, дорогостоящие дисковые устройства (именно поэтому впоследствии термин RAID стали расшифровывать как Redundant Arrays of Independent Discs — избыточные массивы независимых дисков). И только сейчас, когда за счет общего прогресса стоимость таких систем значительно снизилась и появились достаточно хорошие диски по разумной цене, различные решения на базе RAID-технологии стали активно предлагаться для рабочих станций и серверов, а в упрощенном варианте — для офисных и даже домашних компьютеров.

Впрочем, стоимость внешних RAID-систем снижается не так быстро, как цены на базовые диски — последние определяют лишь половину затрат на создание полной системы. Весьма существенную ее часть составляют специализированный контроллер (со встроенным процессором) и программное обеспечение (firmware), собственно и обеспечивающие совместную эффективную работу дисков как единого целого. Более того, в полном соответствии с пословицей, что аппетит приходит во время еды, по мере развития технологий пропорционально растут требования к характеристикам систем. Сегодня пользователи желают получить массивы емкостью в 3…6 ТБ (системы в 10 и более ТБ тоже возможны уже сейчас) со скоростью записи/чтения в сотни мегабайт в секунду. Отвечая на этот спрос, производители выпускают все более мощные системы, в которых используются последние модели RISC-процессоров. Так что стоимость современных RAID-систем, как и ранее, остается на уровне от нескольких тысяч до десятков тысяч долларов. Оно и понятно — в компьютерной индустрии, также как и в других отраслях высоких технологий, действует общий «закон сохранения стоимости» (иначе ее развитие прекратится). Но за те же деньги пользователь сегодня получает в несколько раз более мощную систему, чем еще несколько лет назад.

В России исторически так сложилось, что одними из наиболее активных потребителей подобных систем стали видеостудии и телецентры. Причина очевидна — цифровой кино- и видеоматериал требует таких больших объемов дисковой памяти и таких высоких скоростей записи/чтения данных, что без специализированных дисковых систем хранения (внешних массивов) во многих случаях было бы просто невозможно работать над сложными проектами. В качестве характерного приложения можно привести задачу цифрового видеомонтажа. Сегодня здесь на повестке дня стоит одновременная обработка в реальном времени трех-четырех потоков некомпрессированного видео и нескольких слоев графики и титров. При стандартном разрешении телевизионного кадра 720×576 при компонентном сигнале YUV и представлении 4:2:2 это требует скоростей воспроизведения до 80…90 МБ/с, при этом необходимая для хранения всего 10 ч видео емкость составляет около 1 ТБ. С другой стороны, все более актуальными становятся различные системы HD-монтажа, оперирующие с телевизионными кадрами высокой четкости 1280×720 25p или даже 1920×1080 50i. Соответственно требования к объемам и потокам возрастают в разы. Впрочем, надо оговориться, что на практике при работе в HD-разрешении рост потребностей пока сдерживается за счет разумного использования различных кодеков, благодаря которым появляется возможность оперировать компрессированными потоками порядка 100 Мбит/с.

Способы организации хранения

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

Со временем в студии возникал своеобразный «зоопарк» компьютеров различных моделей, разной производительности и сильно отличавшихся по возможностям. Каждая рабочая станция на момент покупки стоила немалых денег — и поразительно быстро устаревала, при этом переход со старой машины на новую, перенос программного обеспечения и данных был весьма трудоемок и длителен. Именно поэтому «простая» идея «отвязать» хотя бы дисковую память от конкретной станции (сервера), замена которой в случае необходимости наращивания вычислительных мощностей оказывалась более простой задачей, сразу привлекла внимание IT-руководителей студий.

Схема сети студии с использованием RAID-массивов по технологии DAS

Так лет пять назад в нашу жизнь вошли системы DAS (Direct Attached Storage — хранилища прямого подключения) — независимые дисковые системы хранения, напрямую подключаемые к рабочим станциям и серверам по интерфейсу SCSI. Конструктивно это RAID-массивы на 4…16 дисков в отдельном корпусе со своим процессором и оперативной памятью, надежными (полностью резервированными) подсистемами питания и охлаждения, встроенной системой управления и самодиагностики. Несмотря на сложную внутреннюю организацию, эти системы рассматриваются компьютерами как обычные SCSI-устройства (вчера это был Ultra 160 SCSI, сегодня Ultra 320, а завтра уже ожидается повсеместный переход на SAS — Serial Attached SCSI). А поскольку любой более-менее сложный проект предполагает групповую работу над одним и тем же материалом, то рабочие станции и обычные офисные компьютеры объединяются в локальную сеть Ethernet. В результате схема построения общей сети студии выглядит так, как показано на рисунке.

Оказалось, что пока объем общих данных невелик, а число рабочих станций (серверов) не превышает 2…3, такая классическая архитектура построения вычислительной сети вполне удовлетворяет реальным потребностям студии. Однако по мере ее развития, приобретения под новые задачи дополнительных станций (опять же со своими RAID-массивами) и соответствующего роста объема данных даже гигабитная сеть не справляется с пересылаемыми потоками и регулярно становится «узким местом», существенно снижающим общую производительность. Более того, в последнее время в связи с резким ростом объемов производства отечественной кино- и видеопродукции, и особенно с многократным увеличением числа телевизионных сериалов, особую остроту приобрела проблема эффективной обработки исходного видеоматериала последовательно несколькими специалистами. Что же, пересаживать их с одной рабочей станции на другую? Перегонять рабочий материал по сети (а это терабайты данных)? Или даже переносить (если не перевозить) DAS-систему хранения (масса 15…40 кг) от одного компьютера к другому? Все эти способы известны из практики, но они только увеличивают время и повышают сложность работы над проектом.

Выход — в использовании преимуществ интерфейса Fibre Channel и построении на его основе специализированной сети только для передачи данных между рабочими станциями (серверами), отделив ее от локальной сети прочих пользователей. Fibre Channel (FC) существует довольно давно, но всегда считался уделом только очень богатых организаций с «неограниченными» бюджетами, не обращающих большого внимания на цену вопроса. С тех времен многое изменилось, но большинство IT-специалистов до сих пор помнят о невероятной стоимости решений на базе FC и по инерции даже не предполагают возможности его применения у себя.

Надо сказать, это не просто обычный интерфейс между двумя устройствами. Очень упрощенно его идею можно изложить так: высокоскоростная передача потоков данных (подобно SCSI) по последовательным каналам с возможностью коммутации и маршрутизации (подобно обычным сетям Ethernet) и работой на больших расстояниях (до десятков километров). Физическая реализация канала может быть выполнена и на основе медного кабеля (но с существенными ограничениями по скорости и дальности), однако в основном используется оптоволокно (дальность работы до 300 м при использовании оптических многомодовых кабелей для варианта 2 Гбит/с, 150 м для 4 Гбит/с при полной скорости интерфейса; до 10 км в случае одномодовых кабелей). Скорости передачи данных по стандарту: — 1, 2 и 4 Гбит/с. C учетом того, что для соединения устройств применяются два оптических кабеля, каждый из которых работает в одном направлении, при сбалансированном наборе операций записи/чтения скорость обмена данными удваивается, то есть Fibre Channel работает в полнодуплексном режиме. В пересчете на мегабайты паспортная скорость составляет соответственно 100, 200 и 400 МБ/с. Реально при отношении операций записи/чтения 50×50 скорость интерфейса достигает уже 200, 400 и 800 МБ/с.

В будущем должны появиться варианты на 10 Гбит/с (или 1000 МБ/с). Сегодня наиболее популярны системы, обеспечивающие скорость 2 Гбит/с, поскольку они имеют лучшее соотношение цены и качества. Но с осени 2006 года реальными становятся устройства на 4 Гбит/с.

Схема сети на основе коммутатора Fibre Channel

Топология FC напоминает сетевую. Это может быть и последовательное соединение устройств в кольцо (петля с арбитражем), и соединение «точка-точка» (в результате практически ничем не отличается от SCSI, разве что расстояния между устройствами могут быть на порядки больше). Но самая популярная и перспективная топология Fibre Channel — это подключение через коммутируемую матрицу Switched Fabric (также иногда используют название переключаемая матрица). Несмотря на определенную функциональную схожесть с концентратором или маршрутизатором обычного Ethernet, FC-матрица принципиально от них отличается по производительности. Через нее различные устройства одновременно и параллельно работают на полной скорости, нисколько не мешая друг другу, как если бы они были соединены друг с другом напрямую. Современные матрицы Switched Fabric, такие как QLogic SANBox 5600 на 16 портов FC, имеют агрегированную полосу пропускания 144 Гбит/с, то есть 16 портов на 4+4 Гбит/с плюс полоса, необходимая для каскадирования (подключения к другой Switched Fabric). Таким образом, применение FС дает возможность принципиально изменить архитектуру компьютерной сети любой организации.

В этом варианте возможности по конфигурированию огромны — любая станция (сервер) может обращаться к любому, разрешенному администратором системы, дисковому ресурсу. Более того, возможен доступ к одному и тому же диску нескольких устройств одновременно, причем с высокой скоростью, не идущей ни в какое сравнение со скоростью передачи данных по Ethernet. И что особенно важно — будущее наращивание и масштабирование вычислительных средств студии перестает быть головоломной задачей. В зависимости от того, нехватка каких возможностей возникла, достаточно добавить либо новую рабочую станцию, либо еще одну систему хранения, подключив их к сети через коммутатор-матрицу FC. При таком построении отпадают и проблемы переноса данных с одного рабочего места на другое. По завершении очередного этапа работы над фильмом другой сотрудник сразу начинает заниматься тем же самым фильмом, никуда не перемещая файлы и нисколько не теряя в скорости доступа к ним. Более того, вполне возможна и одновременная работа нескольких пользователей над одним проектом, что существенно ускоряет производственный процесс. Фактически, все подключенные таким образом дисковые массивы при использовании специального программного обеспечения образуют единую совместную систему хранения студии. Эта прогрессивная технология получила название SAN (Storage Area Network — сеть систем хранения).

Таковы основные преимущества использования FC-сетей в видеопроизводстве. Однако есть еще одна серьезная причина для перехода на FC — устранение шума из видеомонтажной. Современные системы хранения данных включают в себя, как правило, до 16 жестких дисков, несколько блоков питания и вентиляторов охлаждения. Все это техническое великолепие, увы, шумит, и шумит заметно. Для людей, занимающихся творчеством с утра до вечера, этот шум является весьма серьезной проблемой. Применение же Fibre Channel позволяет ликвидировать шум как явление. Допустимого расстояния в сотни метров в любом здании с лихвой хватает для удаления рабочих компьютеров от систем хранения (сети SAN).

Единственный недостаток FC — сравнительно высокая стоимость оборудования (особенно коммутаторов). Но, во-первых, в последнее время, благодаря увеличивающейся популярности, цены стали заметно снижаться. И, главное, начальные затраты для развивающихся компаний быстро окупаются за счет более высокой производительности (отдачи с рабочего места) и существенной экономии на последующем расширении. Хотя надо признать, что применение Fibre Channel для малых студий на две-три рабочие станции (сервера) все еще экономически неоправданно. И для них пока более разумным остается классическая архитектура DAS. Впрочем, для хранения общих (архивных) данных студии, вне зависимости от ее размера, целесообразно использование специальных сетевых устройств хранения, так называемых устройств NAS (Network Attached Storage — подключаемые к сети хранилища).

Сетевые устройства NAS

До недавнего времени для хранения данных в локальной сети и совместной работы с ними, как правило, закупались довольно дорогие серверы с требуемой дисковой емкостью (так называемые файловые серверы). Причем на эти серверы чаще всего ставилась операционная система Windows, а сами они требовали соответствующего внимания системных администраторов и регулярного обслуживания. Но зачем выбирать столь дорогой и сложный путь, если такой сервер выполняет только сравнительно несложные задачи по отправке и получению данных? Действительно, когда серверы используются в основном для организации хранения, то полезная загрузка установленных процессоров крайне незначительна, да и оперативной памяти требуется немного. Но при этом, как ни смешно, большие ресурсы уходят на поддержку функционирования собственно операционной системы. В результате несколько лет назад появились особые устройства, которые официально называются NAS (Network Attached Storage — сетевое устройство хранения), или, упрощенно, готовые файловые серверы.

Идея NAS довольно проста — фактически, это обычный компьютер (чаще всего используются недорогие процессоры AMD или Intel Celeron) с «прошитой» в памяти операционной системой (обычно это какой-либо клон Linux). Но «прошиваются» только те части операционной системы, которые предназначены для обслуживания всех функций NAS, поэтому объем такой операционной системы не превышает 32 МБ. Поддерживаются различные RAID-уровни хранения данных, но опять же — программно. Из того, что операционная система «зашита» в ПЗУ, вытекает весьма важная особенность NAS — ее крайне трудно «взломать» снаружи. Такая оптимизация операционной системы исключительно под нужды файлового сервера приводит к высокому быстродействию и надежности NAS, даже несмотря на программную организацию RAID.

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

Упрощенная структура NAS

Надо особо подчеркнуть, что основное назначение устройств NAS — это хранение готовых данных, копирование и архивирование материалов, созданных на рабочих станциях, в конце концов — обмен данными между ними через NAS. Однако попытки использовать любые сетевые устройства для размещения промежуточных материалов в процессе их создания, для удаленного редактирования видео даже с DV-качеством, как правило, оказываются разочаровывающими. Хотя элементарные расчеты убедительно показывают, что вроде бы все должно получиться. Реальная полоса гигабитной сети составляет 60…70 МБ/с и ее должно хватить чуть ли не на 20 DV-потоков по 3,5 МБ/с каждый. Иными словами, по идее до 20 человек, казалось бы, могут одновременно смотреть и редактировать видео формата DV в режиме реального времени (если, конечно, имеющаяся рабочая станция и видеомонтажная программа позволяют это делать) без каких-либо проблем. Сказано — сделано, и несколько студий попытались внедрить у себя подобную технологию. Однако результат оказался плачевным — не то что 20, даже пять человек не могли одновременно комфортно работать с видео минимального качества DV. И вроде бы все правильно, да и формально-то все работает, но вот производительность труда, если можно так выразиться, близка к нулю. Поскольку эта ошибка регулярно допускается в различных студиях, то на причинах данного «парадокса» стоит остановиться подробнее.

Суть проблемы в том, что не учитывается тот простой факт, что для комфортной работы с видео пропускная способность канала «видеоредактор — данные в сети» должна быть не меньше канала «локальный диск — программа». Но, кроме поддержки высокой средней скорости потока данных, и время реакции системы на каждый запрос данных от пользователя не должно превышать привычного значения, то есть как в случае применения локального жесткого диска (или напрямую подключенного к станции RAID-массива). В противном случае любой человек немедленно почувствует заметные задержки в системе, причем в первую очередь в ее откликах на свои команды — а это и есть дискомфорт.

Что же происходит, когда данные находятся в сети, а не на локальном диске? Полоса пропускания в сети делится между пользователями, и время реакции на запрос видеомонтажной программы может увеличиться в разы по сравнению с локальным диском. В результате все очень просто — программа начинает обработку, посылает запрос на необходимые данные, который ставится в очередь — и далее ей приходится относительно долго (по сравнению с локальным диском) ждать запрошенных данных. Задержка особенно заметна в случае, когда рабочая станция обрабатывает кадры быстрее реального времени (то есть на просчет измененного кадра уходит меньше 20 мс). Разница между работой с локальным диском (под локальным диском здесь и далее мы будем понимать любой локальный диск, напрямую подключенный к станции RAID-массив и т. п.) и работой по сети будет тем больше, чем мощнее рабочая станция и чем быстрее ее локальный диск. Пропускная способность сети — фактор постоянный, так что сетевая работа с данными фактически снижает эффективную производительность собственно рабочей станции. Если же скорость падает на порядок, когда в сети одновременно пытаются работать более пяти монтажеров, то работа становится просто невыносимой.

К сожалению, в рамках гигабитной Ethernet ничего сделать нельзя. Возможно, светлое будущее за 10-гигабитной Ethernet и реализацией iSCSI. Но когда наступит это светлое будущее, когда это оборудование станет доступным и коммерчески обоснованным, сказать сложно. Что делать сейчас? Ответ уже был дан — использовать оборудование FC и строить выделенные сети хранения (SAN).

Больше, быстрее, надежнее

Напомним, что основные задачи, которые призван решить RAID-массив как система объединения нескольких дисков в одно логическое устройство, это увеличение емкости, скорости записи/чтения и повышение надежности хранения данных. С емкостью все понятно — чем больше используется составляющих систему дисков и чем больше емкость каждого из них, тем лучше. Сегодня компания Seagate уже предлагает SATA-диски емкостью 750 ГБ. Таким образом, для популярного 16-дискового массива доступная емкость может составлять 12 ТБ!

Особое внимание уделяется задаче обеспечения надежности хранения данных. Она решается как на аппаратном уровне (избыточные блоки питания и вентиляторы охлаждения, выделение нескольких дисков для «горячего» резервирования, возможность установки специального модуля с батареей-аккумулятором для сохранения данных кэш-памяти при аварийном отключении питания), так и на программном (интеллектуальная система самодиагностики дисков, контроля напряжения и температуры). Эффективным средством защиты данных является выбор уровня RAID, обеспечивающего необходимый компромисс между эффективностью работы массива (доступный объем и быстродействие) и надежностью хранения (допустимым числом отказавших дисков).

В современных дисковых массивах используются специализированные контроллеры, построенные на базе высокопроизводительных RISC-процессоров, аппаратно поддерживающие разные RAID-уровни.

RAID 0 — это простое распараллеливание, веерная запись/чтение блоками на все установленные диски. Самая высокая производительность, минимальная цена гигабайта хранения, но отсутствие защиты от сбоя. Поскольку RAID 0 определяет простейший вариант построения массива — без избыточности дисков, то, строго говоря, он даже не является RAID. Тем не менее, этот уровень официально утвержден консорциумом по стандартизации RAID (RAID Advisory Board, RAB) и широко используется на практике.

RAID 3 — массив с вычислением контрольного значения четности

RAID 1 — предусматривает зеркалирование (mirriring), то есть дублирование всех записей на две идентичные группы дисков. Обеспечивается самая высокая степень защиты критически важных данных, но как следствие — вдвое меньший доступный объем хранения.

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

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

RAID 5 аналогичен RAID 3, но запись зн ачений четности распределена между всеми дисками. Кроме того, уменьшен размер блоков записываемых данных, что увеличивает быстродействие системы при большом количестве запросов на запись/чтение небольших файлов.

RAID 0+1, 30 (3+0), 50 (5+0) — это комбинированные варианты, в которых роль отдельных дисков играют RAID-массивы 0, 3 или 5 уровня соответственно.

В RAID-контроллерах последнего поколения, построенных, в частности, на базе процессора Intel i80331, аппаратно реализованы более сложные уровни. Это, например, RAID 6, в котором параллельно рассчитываются два независимых значения четности, распределяемые между всеми дисками. Сохранность данных обеспечивается при выходе из строя даже двух дисков.

Уровень Triple Parity (TP) — его еще называют RAID 6+ — обеспечивает вычисление трех независимых значений четности и допускает одновременный выход трех дисков.

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

Очевидно, что все эти решения позволяют сохранить данные даже при физическом повреждении работающего в системе диска (одного или нескольких). Однако доводить систему до такого критического состояния не стоит. Более благоразумно и грамотно предвидеть угрозу, заранее «вычислить» потенциально плохой диск (лучше еще до установки в систему) и принять превентивные меры по его замене. Именно для этого некоторые производители современных дисковых массивов предлагают для своих систем различные способы оперативной диагностики состояния дисков, что создает дополнительный эшелон защиты данных.

Впрочем, более правильным является не борьба со сбоями, а использование изначально более надежных дисков. На первый взгляд задача выбора дисков тривиальна — найти что-то ценой поменьше, а объемом побольше.

Диски для RAID-массивов

Несмотря на все хитроумные способы организации записи/чтения данных, надежность хранения в первую очередь зависит от стабильности работы используемых в системе жестких дисков. Чаще всего в RAID-массивы без всякой задней мысли устанавливают стандартные диски, изначально предназначенные для обычных компьютеров. Они обладают большой емкостью, высокой надежностью и сравнительно низкой стоимостью. Казалось бы, чего же боле? Однако здесь и существует проблема!

Дело в том, что во все современные жесткие диски IDE/SATA для повышения надежности хранения данных встроена автоматическая функция коррекции ошибок. При ее разработке исходили из здравого посыла, что жесткий диск не должен отправлять куда-либо сообщение о каждой обнаруженной ошибке чтения, загружая тем самым другие устройства (в том числе процессор компьютера) ненужной дополнительной работой. Напротив, он должен предпринять все возможное для самостоятельной коррекции обнаруженной ошибки, для начала многократно пытаясь прочитать сбойный блок, а в случае неудачи исключить его из использования, сделав переназначение (remap) плохого сектора на хороший. «Погрузившись» в данную «внутреннюю» операцию, диск начинает отвечать на внешние запросы с большой задержкой, тем большей, чем интенсивней поступают на него команды записи/чтения. И это правильно до тех пор, пока этот диск функционирует сам по себе, являясь самостоятельным, не входящим ни в какие RAID-массивы, устройством хранения данных. Однако когда он является частью сложной системы из многих дисков в RAID-массиве, некоторые диски в которых выделены для хранения резервных данных на случай любой ошибки, то есть системы, управляемой специализированным интеллектуальным RAID-контроллером, подобная «самостоятельность» установленного в систему диска может приводить к проблемам.

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

Выход из строя массива с несоответствующими дисками

Причем в результате последующего анализа может оказаться, что отключенные диски были вполне работоспособны и могли далее использоваться, но будет уже слишком поздно. Здесь не поможет и наличие диска в «горячем» резерве — пока RAID-контроллер будет вводить его в массив (этот процесс может занять часы и дни, в зависимости от нагрузки на RAID), вполне может «отвалиться» следующий диск в массиве, и данные также будут безвозвратно потеряны. Эта ситуация иллюстрируется на рисунке ниже.

Безусловно, такая проблема возникает только при интенсивной работе дисков в RAID-массиве на запись/чтение данных. Но достаточно совпадения буквально минутной «тяжелой» нагрузки на RAID-массив и начала автоматической процедуры восстановления ошибки на каком-то жестком диске, как ложный выход из строя жесткого диска станет вполне реальным. Трудность решения этой проблемы в том, что диск и на самом деле, реально, может выйти из строя, поэтому увеличение допустимого времени отклика от жесткого диска, что иногда, к сожалению, делают некоторые производители RAID-контроллеров, не решает проблему, а, наоборот, загоняет ее вглубь. Ведь в том случае, когда диск на самом деле сломался, промедление в реакции RAID-контроллера на это событие чревато полной потерей данных. Такие случаи, к сожалению, происходили не раз. И потерявшие все результаты месяца напряженной работы «творцы» кусали локти и проклинали производителей и поставщиков ненадежного оборудования. А заодно вообще всех «железячников». Но так ли они были виноваты?

Наличие данной проблемы (задержка отклика из-за встроенной функции коррекции ошибок) не зависит от того, диски или массив какого производителя планируется использовать. Ее возможное решение в другом — ввести ограничение на максимально допустимую длительность обработки ошибок жестким диском с обязательным информированием RAID-контроллера о наличии конкретной ошибки. В этом случае RAID-контроллер «поймет», что диск исправен, но у него есть конкретная ошибка в конкретном месте, которую контроллер легко скорректирует.

Коррекция ошибок в случае использования дисков TLER

Первой компанией, которая предложила такое понятное и очевидное любому грамотному специалисту решение, стала Western Digital Corporation. Она разработала специальную серию дисков RAID Edition (RE) c функцией TLER (Time Limited Error Correction — ограниченное время на коррекцию ошибки). TLER-диски при возникновении ошибки начинают нормальный процесс ее коррекции, но, не уложившись в 7 секунд, сообщают RAID-контроллеру о возникшей ошибке, откладывая ее дальнейшую обработку до «лучших времен» (например, на момент простоя системы). При этом контроллер легко справится с возникшей ошибкой чтения данных с конкретного диска — ведь для этого в его распоряжении всегда есть резервная информация. Такой алгоритм иллюстрируется на рисунке ниже.

Отметим, что диски RE от Western Digital, кроме функции TLER, отличает и увеличенное вдвое время наработки на отказ. Значение этого параметра, известного как MTBF (Mean Time Between Failure — среднее время между отказами), приводят все производители жестких дисков как важнейшую характеристику своей продукции. Конечно, сведений о корреляции MTBF с реальной статистикой отказов нет — и его значение напоминает среднюю температуру по больнице. Однако понятно, что чем MTBF больше, тем диски должны быть надежнее. Для обычных дисков SATA значение MTBF не превышает 500 тыс. ч. Для более дорогих SCSI-дисков этот показатель уже равен 1 млн. 200 тыс. ч. У SATA-дисков RAID Edition от Western Digital первого поколения, выпущенных в середине 2004 года, значение MTBF составляло 1 млн ч., а для поставляемых ныне RE-дисков второго поколения (RE 2) MTBF уже заявлено в 1 млн 200 тыс. ч (более 100 лет непрерывной работы)! Дополнительным аргументом в пользу дисков SATA WD RE является тот факт, что они официально предназначены для круглосуточной работы (24/7) в RAID-массивах, а фирменная гарантия на них составляет 5 лет. При этом цена таких дисков превышает обычную не более чем на 10…15%, что практически не сказывается на общей стоимости дисковой системы хранения данных. В связи с этим настоятельно рекомендуется использовать именно такие диски. Единственное существующее ограничение заключается в том, что пока максимальная емкость RE-дисков составляет 500 ГБ. Впрочем, использование дисков объемом 750 ГБ от Seagate в дисковых системах хранения пока не очень разумно в силу новизны и «сырости» используемой в них технологии перпендикулярной записи.

Важным вопросом является видимый объем построенного RAID-массива. Очевидно, что за исключением простейшего уровня RAID 0 доступная емкость отличается от суммы емкостей установленных в систему дисков, так как часть дисков «уходит» под резервные данные. В RAID 1 (зеркалирование) «теряется» ровно половина, в RAID 3 и 5 — один, в уровне 6 — два, в 6+ — три диска. Кроме того, при хранении важных данных рекомендуется один из установленных дисков использовать под горячий резерв (hot spare) — в этом случае при выходе любого из рабочих дисков система автоматически его отключит и осуществит перенос (восстановление) данных на этот резервный диск. В качестве пояснения рассмотрим пример системы на 16 дисков по 500 ГБ каждый. Простейший расчет показывает, что при RAID 0 доступный объем составит 8 ТБ, RAID 1 — 4 ТБ, RAID 3/5 — 7,5 ТБ, RAID 6 — 7 ТБ, ТР — 6,5 ТБ. Ну и RAID 3/5 c одним диском в горячем резерве — 7 ТБ.

Наконец, рассмотрим вопрос о быстродействии дисковой системы хранения. Как уже не раз подчеркивалось, для управления работой массива применяется специализированный RISC-процессор с оперативной памятью (от 256 МБ) и внутренней шиной PCI-X. Повторимся, что с точки зрения компьютера, к которому подключается такая система хранения данных, это обычное SCSI-устройство, поддерживающее все возможности интерфейса SCSI. Но поступающий от компьютера поток данных распределяется между всеми установленными в систему рабочими жесткими дисками. И при малом числе дисков быстродействие растет почти линейным образом пропорционально их числу. Добавляя все больше и больше дисков, можно тем самым увеличивать производительность, но только до тех пор, пока процессор системы хранения данных будет успевать обслуживать каждый диск без малейших задержек. Как только процессор перестанет успевать, дальнейшее увеличение количества дисков не приведет к повышению производительности. Так вот, лучшие на середину 2006 года недорогие системы хранения данных на SATA-дисках с процессором Intel 80331 667 МГц достигли максимальной скорости линейного чтения по тестам 270 МБ/с, что близко к пропускной способности SCSI-интерфейса (320 МБ/с). В то же время, теоретическая полоса пропускания для Fibre Channel 4 Gb составляет 400 МБ/с в одну сторону (и столько же обратно), чего с лихвой хватает для решения большинства задач. А если не хватит, то применение технологии Multipath позволяет еще удвоить полосу пропускания и получить результат, полностью перекрывающий все потребности на ближайшие годы.

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

Замечания и предложения по работе сервера направляйте: web.master at 625-net.ru.

© 1996—2009 «Издательство 625». Все права защищены.

e-mail: magazine at 625-net.ru, тел./факс: (495) 691-77-24, 695-95-88, схема проезда.

Свидетельство о регистрации средства массовой информации Эл № 77-2794.