Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


SATA RAID- массивы.

SATA RAID - массивы.

RAID - Redundant Array of Independent (или Inexpensive) Disks - избыточныймассивнезависимыхдисков. RAID это несколько жестких дисков, объединенных в одну систему для обеспечения скорости и отказоустойчивости. Контроллер системы RAID помещается между высокоскоростным потоком данных и несколькими более медленными потоками данных, направленными в диски массива RAID. При выполнении компьютером записи на диск контроллер RAID принимает быстрый поток данных и разбивает его на несколько синхронизированных потоков, по одному на каждый диск (расщепление потока данных - stripping). При чтении контроллер RAID принимает потоки данных с каждого диска, объединяет эти потоки в один и передает более быстрый поток данных дальше. Контроллер системы RAID выполняет также функции коррекции ошибок, например, в массив из восьми дисков можно добавить девятый содержащий только информацию для коррекции ошибок. Если в таком RAID-массиве откажет диск содержащий данные, то контроллер RAID, используя корректирующие коды, восстановит потерянные данные.

Существует несколько вариантов реализации RAID, называемых уровнями, например, 0,1,2,3,4,5,6,7,8 и т. п. Разные уровни RAID обеспечивают различную производительность и устойчивость к сбоям, имеют разную стоимость. Применение RAID-массивов целесообразно в случае критически важных задач, требующих высокой надежности и производительности. Использование дискового массива RAID позволяет добиться наивысшей производительности обмена и высокой надежности хранения больших массивов данных, но это достигается либо с помощью дорогой платы RAID-контроллера, либо - программной организацией RAID-массива, но с ощутимым снижением производительности. В качестве решения проблемы создания недорогово и в то же время производительного RAID-массива был предложен RAID-контроллер SATA-дисков, впервые интегрированный в микросхеме южного моста ICH5R. RAID-контроллер SATA-дисков является программным, в организации его работы используются программы выполняемые центральным процессором, а обычный реальный аппаратный RAID-контроллер выполняется, как правило, на отдельной микросхеме.

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

Модель с параллельным доступом реализуется только при условии, что размер запроса на запись данных больше размера самого блока. Например, размер отдельного блока составляет 4 Кбайт, а размер запроса на запись данных 32 Кбайт, то в этом случае исходная информация делится на восемь блоков по 4 Кбайт каждый. Если имеется массив из восьми дисков, то одновременно можно записать восемь блоков (32 Кбайт, за один раз). То есть скорость записи будет в восемь раз выше, чем при использовании одного диска. Подобная ситуация является идеальной, поскольку далеко не всегда размер запроса кратен размеру блока и количеству дисков в массиве.

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

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

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

 

Рис. 1. RAID 0

 

Рис. 2. RAID 1

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

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

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

Теоретически в случае использования RAID 0 (режим STRIPE) достигается увеличение скорости дисковой подсистемы пропорционально количеству дисков, составляющих массив - информация разбивается на небольшие блоки и «раскидывается» по дискам. На практике скорость увеличивается не так значительно. Главным недостатком режима RAID 0 (Stripe) является уменьшение надежности хранения информации ровно в то количество раз, которое равно числу используемых винчестеров. Специально для устранения этого неприятного эффекта предназначен режим RAID 0+1 - своеобразная «смесь» режимов Mirror и Stripe. Для организации массива RAID 0+1 необходимы, как минимум, 4 накопителя. Результат - надежность одиночного диска плюс двойной объем и увеличившееся быстродействие.

RAID 2 – предназначен для повышения надежности хранения данных использует коды с исправлением ошибок. Используется один или два диска содержащие коды для исправления ошибок (ЕСС).

RAID 3 - данные распределяются на дисках массива побайтно, контрольные суммы данных для каждого из основных дисков записывается на один дополнительный диск.

RAID 4 - основное отличие от RAID 3 является по секторное расщепление данных вместо побайтного и не нуждается в синхронизации вращения дисков.

RAID 5 - распределение данных по блокам, контрольные суммы распределены по всем дискам массива.

 

Рис. 3. RAID 2, 3, 4

 

Рис. 4. RAID 5

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

 

Рис. 5. Технология дискового массива RAID 6

Это отличное решение для систем, требующих повышенной надежности. Достоинством технология дискового массива RAID 6 является высокая скорость чтения данных и высокая отказоустойчивость. Недостатками - сложный конструктив контроллера, большая нагрузка на контроллер при вычислении контрольных сумм и адресов, по которым они должны быть размещены на дисках, очень малая скорость записи, низкий коэффициент использования дискового пространства. Для RAID 6 он равен N/(N+2), а для RAID 5 - N/(N+1), где N - число дисков с данными. Ни одна из коммерческих фирм на сегодняшний день не производит дисковых подсистем, в которых используется технология RAID 6.

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

 

Рис. 6. Технология дискового массива RAID 7

Управление массивом RAID 7 возложено на многозадачную операционную систему, работающую в режиме реального времени. Код операционной системы исполняется специальным контрольным процессором, входящим в состав массива RAID 7. Благодаря наличию такой операционной системы каналы передачи данных контролируются в режиме реального времени. Кэширование данных при операциях ввода/вывода проводится централизованно. Для передачи кэшированных данных внутри массива RAID 7 используется высокоскоростная Х-шина. Контрольные суммы хранятся на одном диске, а сам алгоритм вычисления контрольной суммы интегрирован в кэш. Массив RAID 7 может иметь до 12 внешних интерфейсов обмена данными, что позволяет подключить массив одновременно к нескольким компьютерам. Массив RAID 7 имеет линейную масштабируемость по объему дискового пространства и поддерживает до 48 дисков с данными. Поддерживается также технология «горячей замены» вышедших из строя дисков. Наличие встроенного SNMP-агента позволяет проводить мониторинг состояния и управление массивом RAID 7 удаленным образом. Общая производительность на операциях записи на 25-90% лучше, чем для одного диска, и в 1,5-6 раз лучше, чем у RAID-массивов других типов. Количество внешних интерфейсов обмена данными может быть увеличено для подключения массива RAID 7 дополнительно к нескольким компьютерам или увеличения общей пропускной способности канала передачи данных между массивом RAID 7 и компьютером. Обеспечивается очень высокая скорость доступа к данным в много пользовательской среде ( если после первой операции чтения малого объема данных вся информация, считанная с диска, целиком остается в кэше, при последующих операциях чтения этиx же данных они будут считываться из кэша, а не с диска, что про исходит практически мгновенно). Для операций чтения большого объема данных это работает только наполовину, так как в кэше остаются не все считанные данные. А так как в многопользовательской среде одновременно работают несколько пользователей, и работают они, как правило, с одними и теми же данными, и при этом операции чтения малого объема данных составляют подавляющее большинство среди всех операций ввода/вывода, то вероятность чтения данных прямо из кэша становится очень высокой. Именно это и приводит к наблюдаемому эффекту (скорость чтения и записи растет при увеличении числа дисков в массиве). Основным недостатком массивов RAID-7 является их высокая стоимость.

RAID 53 - еще один пример комбинирования RAID-технологий. Массивы типа RAID 53 правильнее было бы называть массивами типа RAID 03, так как первая их часть строится по технологии RAID 3, а вторая - по технологии RAID 0. Такой массив вполне подошел бы тем, кого в RAID 3 устраивает все, кроме его производительности. RAID 53 имеет такую же отказоустойчивость, как и RAID 3, а скорость чтения и записи несколько выше, чем у RAID3. (недостатки: высокая стоимость; низкий коэффициент использования дискового пространства).

 


Лицензия