Технологии хранения данных на магнитных ВЗУ, организация избыточного массива независимых дисков

Автор работы: Пользователь скрыл имя, 30 Января 2011 в 07:53, курсовая работа

Описание

Цель курсовой работы – рассмотреть технологии хранения данных на магнитных ВЗУ, сделать предложение об использовании RAID-массива в Рубцовском институте (филиале) Алтайского государственного университета.

Для достижения данной цели требуется решить следующие задачи:

– изучить основные виды магнитных ВЗУ;

– рассмотреть основные уровни RAID-массивов;

– сделать предложение об использовании RAID-массива в Рубцовском институте, (филиале) Алтайского Государственного Университета.

Работа состоит из  1 файл

Копия Введение.doc

— 520.50 Кб (Скачать документ)

    Таким образом, для долговременного  хранения больших объемов информации больше всего подходят  НЖМД, накопители на гибких магнитных дисках морально устарели.

  Для увеличения объема, производительности и надежности накопители (НЖМД) объединяют в массивы. 
 
 
 
 
 
 

Глава2. RAID-массивы 

    2.1 Надежность  и производительность 

    Проблемой повышения надежности хранения информации и одновременного увеличения производительности системы хранения данных занимаются многие разработчики компьютерной периферии. Относительно повышения надежности хранения все понятно: информация – это товар, и нередко очень ценный. Для защиты от потери данных придумано множество способов, наиболее известный и надежный из которых – это резервное копирование информации [3–4].

    Вопрос повышения производительности дисковой подсистемы весьма сложен. Рост вычислительных мощностей современных процессоров привел к тому, что наблюдается явный дисбаланс между возможностями жестких дисков и потребностями процессоров. При этом не справляются ни дорогие SCSI-диски, ни уж тем более IDE-диски. Но если не хватает возможностей одного диска, то, можно решить данную проблему наличием нескольких дисков. Само по себе наличие двух или более жестких дисков на компьютере или на сервере дела не меняет – нужно заставить эти диски работать совместно (параллельно) друг с другом так, чтобы это позволило повысить производительность дисковой подсистемы на операциях записи,чтения. Кроме того, используя несколько жестких дисков, можно добиться повышения не только производительности, но и надежности хранения данных, чтобы выход из строя одного из дисков не приводил к потере информации. Такой подход был предложен еще в 1987 году американскими исследователями Паттерсоном, Гибсоном и Катцом из Калифорнийского университета Беркли. В своей статье «A Case for Redundant Arrays of Inexpensive Discs, RAID» («избыточный массив недорогих дисков») они описали, каким образом можно объединить несколько дешевых жестких дисков в одно логическое устройство так, чтобы в результате повышались емкость и быстродействие системы, а отказ отдельных дисков не приводил к отказу всей системы.

    Технология построения RAID-массивов не утратила актуальности и сегодня,  изменилась лишь расшифровка аббревиатуры RAID.

  Первоначально RAID-массивы строились вовсе не на дешевых дисках, поэтому слово Inexpensive (недорогие) поменяли на Independent (независимые), что больше соответствовало действительности.

Более того, именно сейчас технология RAID получила широкое распространение. Так, если еще несколько лет назад RAID-массивы использовались в дорогостоящих серверах масштаба предприятия с применением SCSI-дисков, то сегодня они стали своеобразным стандартом де-факто даже для серверов начального уровня. Кроме того, постепенно расширяется и рынок IDE RAID-контроллеров, то есть актуальность приобретает задача построения RAID-массивов на рабочих станциях с использованием дешевых IDE-дисков. Так, некоторые производители материнских плат (Abit, Gigabyte) уже начали интегрировать IDE RAID-контроллеры на сами платы.

    Итак, RAID – это избыточный массив независимых дисков (Redundant Arrays of Independent Discs), на который возлагается задача обеспечения отказоустойчивости и повышения производительности. Отказоустойчивость достигается за счет избыточности. То есть часть емкости дискового пространства отводится для служебных целей, становясь недоступной для пользователя.

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

    Совместную работу дисков в массиве можно организовать с использованием либо параллельного, либо независимого доступа.

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

    Следует отметить, что модель с параллельным доступом реализуется только при условии, что размер запроса на запись данных больше размера самого блока. В противном случае реализовать параллельную запись нескольких блоков просто невозможно. Представим ситуацию, когда размер отдельного блока составляет 8 Кбайт, а размер запроса на запись данных – 64 Кбайт. В этом случае исходная информация нарезается на восемь блоков по 8 Кбайт каждый. Если имеется массив из четырех дисков, то одновременно можно записать четыре блока, или 32 Кбайт, за один раз. Очевидно, что в рассмотренном примере скорость записи и скорость считывания окажется в четыре раза выше, чем при использовании одного диска. Однако такая ситуация является идеальной, поскольку далеко не всегда размер запроса кратен размеру блока и количеству дисков в массиве.

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

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

  В настоящее время существует несколько стандартизированных RAID-уровней: от RAID 0 до RAID 5. К тому же используются комбинации этих уровней, а также фирменные уровни (например, RAID 6, RAID 7). Наиболее распространенными являются уровни 0, 1, 3 и 5. 

      2.2 Основные Уровни RAID 

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

Плюсы:  
– увеличивается производительность, чем больше дисков задействовано в RAID 0, тем быстрее массив данных будет записан на диски, поскольку запись происходит одновременно;

  – RAID 0 может быть также реализован программно.

Рис.2.1. Raid 0 

Минусы:

– вероятность того, что система выйдет из строя равна произведению вероятности поломки одного диска на количество дисков [7].  

  RAID уровня 1 (Mirrored disk) – это массив дисков со 100-процентной избыточностью. То есть данные при этом просто полностью дублируются (зеркалируются), за счет чего достигается очень высокий уровень надежности (как, впрочем, и стоимости). Для реализации уровня 1 не требуется предварительно разбивать диски и данные на блоки []. В простейшем случае два диска содержат одинаковую информацию и являются одним логическим диском (рис.2.2.). При выходе из строя одного диска его функции выполняет другой. Кроме того, этот уровень удваивает скорость считывания информации, так как эта операция может выполняться одновременно с двух дисков. Такая схема хранения информации используется в основном в тех случаях, когда цена безопасности данных намного выше стоимости реализации системы хранения.

Рис.2.2. Raid 1

Плюсы:  
– обеспечивается приемлемая скорость записи, а при чтении возможен выигрыш производительности при распараллеливании запросов;  
– обеспечивается высокая надёжность, поскольку вероятность выхода из строя нескольких дисков одновременно существенна ниже поломки одного. Например, если вероятность выхода одного жёсткого диска равна 0,05,то вероятность выхода из строя RAID1 из двух подобных дисков будет равна 0,0025. При этом при оперативной замене вышедшего из строя диска на работающий вероятность того, что второй диск выйдет из строя за время замены, что в компании BeGet не превышает 12 часов, ничтожно мала, учитывая срок службы дисков.

Минусы: 
– повышенные затраты на оборудование, поскольку в случае

использования RAID1 общий объём памяти составляет только половину от реального при  классическом случае RAID1 из двух жёстких  дисков. 

     RAID уровня 2 – это схема резервирования данных с использованием кода Хэмминга для коррекции ошибок. Записываемые данные формируются не на основе блочной структуры, как в RAID 0, а на основе слов, причем размер слова равен количеству дисков для записи данных в массиве. Если, к примеру, в массиве имеется четыре диска для записи данных, то размер слова равен четырем дискам. Каждый отдельный бит слова записывается на отдельный диск массива. Например, если массив имеет четыре диска для записи данных, то последовательность четырех бит, то есть слово, запишется на массив дисков таким образом, что первый бит, окажется на первом диске, второй бит – на втором и т.д.

    Кроме того, для каждого слова вычисляется код коррекции ошибок (ECC), который записывается на выделенные диски для хранения контрольной информации (рис.2.3.). Их число равно количеству бит в контрольном слове, причем каждый бит контрольного слова записывается на отдельный диск. Количество бит в контрольном слове и соответственно необходимое количество дисков для хранения контрольной информации рассчитывается на основе следующей формулы: где K – разрядность слова данных. Естественно, что L при вычислении по указанной формуле округляется в большую сторону до ближайшего целого числа. Впрочем, чтобы не связываться с формулами, можно воспользоваться другим мнемоническим правилом: разрядность контрольного слова определяется количеством разрядов, необходимым для двоичного представления размера слова. Если, например, размер слова равен четырем (в двоичной записи 100), то, чтобы записать это число в двоичном виде, потребуется три разряда, значит, размер контрольного слова равен трем. Следовательно, если имеется четыре диска для хранения данных, то потребуется еще три диска для хранения контрольных данных. Аналогично при наличии семи дисков для данных (в двоичной записи 111) понадобится три диска для хранения контрольных слов. Если же под данные отводится восемь дисков (в двоичной записи 1000), то нужно уже четыре диска для контрольной информации.

Рис2.3. Raid 2 

    Код Хэмминга, формирующий контрольное слово, основан на использовании поразрядной операции «исключающего ИЛИ» (XOR) (употребляется также название «неравнозначность»). Логическая операция XOR дает единицу при несовпадении операндов (0 и 1) и нуль при их совпадении (0 и 0 или 1 и 1).

    Само контрольное слово, полученное по алгоритму Хэмминга, – это инверсия результата поразрядной операции исключающего ИЛИ номеров тех информационных разрядов слова, значения которых равны 1. Для иллюстрации рассмотрим исходное слово 1101. В первом (001), третьем (011) и четвертом (100) разрядах этого слова стоит единица. Поэтому необходимо провести поразрядную операцию исключающего ИЛИ для этих номеров разрядов:

    Само же контрольное слово (код Хэмминга) получается при поразрядном инвертировании полученного результата, то есть равно 001.

    При считывании данных вновь рассчитывается код Хэмминга и сравнивается с исходным кодом. Для сравнения двух кодов используется поразрядная операция «исключающего ИЛИ». Если результат сравнения во всех разрядах равен нулю, то считывание верное, в противном случае его значение есть номер ошибочно принятого разряда основного кода. Пусть, к примеру, исходное слово равно 1100000. Поскольку единицы стоят в шестой (110) и седьмой (111) позициях, контрольное слово равно:

Информация о работе Технологии хранения данных на магнитных ВЗУ, организация избыточного массива независимых дисков