Интеллектуальный дисковый массив RAID 6
Интеллектуальные массивы RAID (матрица независимых дисковых накопителей с избыточностью) уровня 5 стали неотъемлемой составной частью массовых файловых и Web-серверов благодаря расширенным возможностям защиты данных и повышения производительности. Но эволюция серверных экосистем привела к появлению нового уровня RAID — RAID 6
В этой статье обсуждаются положительные и отрицательные качества RAID 6, а также способы, которые позволяют подсистеме ввода/вывода разгрузить центральный процессор и шину, взяв на себя обслуживание работы RAID, требующее больших объемов вычислений. Также обсуждаются причины, по которым для использования RAID 6 необходима действительно интеллектуальная подсистема ввода/вывода.
Эффективные системы хранения данных продолжают оставаться «головной болью» в корпоративных вычислительных средах, и для повышения коэффициента готовности большинство организаций используют дисковые массивы RAID 5 в своих серверах, сетях и интернет-системах. Однако на текущий момент такие корпоративные вычислительные среды все больше отличает возрастание количества дисковых устройств большой емкости, их объединение в системы хранения данных и совместное использование дисковой памяти. Множество серверов используют общие системы хранения данных, и одна авария может вызвать останов многих систем.
Сочетание этих факторов позволило выявить один недостаток, присущий RAID 5, который раньше не был заметен. Этот недостаток был назван «режимом с ухудшенными характеристиками», и в этой статье мы расскажем об уязвимости реализаций RAID 5, а также о том, как технология RAID 6 позволяет справиться с этой проблемой. Дополнительную информацию об уровнях RAID и их реализациях можно получить на Web-сайте Intel .
Почему RAID 6?
Для того чтобы понять, почему RAID 6 так важен для сегодняшних корпоративных вычислительных сред, необходимо понять разницу между катастрофическим отказом устройства и ошибкой, связанной с появлением сбойных блоков, которая может быть обработана средствами контроллера RAID. Катастрофический отказ устройства обычно связан с неисправностью двигателя или с поломкой головки. После катастрофического отказа диск обычно становится физически неработоспособным.
Ошибка, связанная с появлением сбойных блоков, возникает при неудачной попытке чтения по разным причинам, и, хотя данный блок считать невозможно, диск в целом остается физически неработоспособным. Появление сбойных блоков – довольно частое явление, и оно влияет на общий объем диска и плотность записи. Появление сбойных блоков в системе без RAID (однодисковой системе) обычно приводит к разрушению данных. Но, несмотря на то что данные в сбойных блоках потеряны, остальное дисковое пространство остается работоспособным, поэтому доступ к диску обычно сохраняется. Если Вы сталкивались с ситуацией, когда файл или не открывается, или содержит «мусор», то, скорее всего, у Вас появился сбойный блок.
Контроллеры RAID, однако, обрабатывают ситуацию со сбойными блоками по-разному. Большинство контроллеров пытаются заранее защитить пользователя от сбойных блоков и предпринимают «сканирование» диска в фоновом режиме. Такая защита обычно ненадежна, она только уменьшает шансы встретить сбойный блок при реальном запросе ввода/вывода. В случае если при проверке обнаружится сбойный блок, данные, которые могут в нем находиться, будут восстановлены и помещены в другом месте диска, а этот блок будет помечен как непригодный. Такой алгоритм поиска и локализации сбойных блоков в неподходящее время и приводит к недостаткам, присущим RAID 5.
Хотя RAID 5 может защитить от одного катастрофического отказа, эта схема не защищает от второго катастрофического отказа. К тому же уровень RAID 5 не может защитить от одного сбойного блока, если система находится в «режиме с ухудшенными характеристиками». Например, если 14-дисковый массив RAID 5 испытал катастрофический отказ, он переходит в режим с ухудшенными характеристиками, а в случае горячей замены переходит в режим восстановления.
В обоих случаях массив становится уязвимым не только в случае полного отказа диска, но даже и в случае возникновения одного сбойного блока. При увеличении количества дисков и их объема эта проблема обостряется из-за того, что:
· Возрастает длительность периода восстановления
· Возрастает вероятность возникновения сбойного блока из-за большого объема дисков
Поэтому, если на одной из этих стадий встретится сбойный блок, будут потеряны данные не только из этого блока, но и все данные в целом.
В зависимости от алгоритма, реализованного производителями, массив или перейдет в режим «отказа», или просто будет продолжать работать (или предложит продолжить работу), несмотря на наличие сбойных блоков данных. В результате или не будут читаться некоторые файлы, или, если сбойный блок приходится на свопинговый файл, будут возникать «синие экраны смерти». Однако обычно в таком случае система пытается восстановиться с использованием последней пригодной резервной копии.
Давайте рассмотрим такой же сценарий для 14-дискового массива RAID 6 с использованием двухдисковой схемы защиты. В случае катастрофического отказа одного диска массив остается работоспособным как в случае второго полного отказа, так и в случае обнаружения сбойного блока, не входя в состояние с ухудшенными характеристиками, как RAID 5. Это возможно потому, что имеются два резервных диска, а не один. Поэтому даже при потере одного диска массив будет продолжать работать и восстановит отказавший диск, при этом целостность данных будет защищена благодаря второму резервному диску.
Хотя вероятность второго полного отказа диска зависит от количества дисков в массиве, вероятность появления сбойного блока зависит как от количества дисков, так и от их объема – поэтому такая ошибка может встречаться гораздо чаще. Высокая потенциальная возможность появления сбойного блока в режиме с ухудшенными характеристиками и является побудительной причиной внедрения RAID 6 в сегодняшние корпоративные системы хранения данных.
Как работает RAID 6?
В схеме RAID 6, как отмечалось выше, для контроля данных используются два диска массива, в то время как RAID 5 используется только один. Небольшая дополнительная стоимость RAID 6 окупается существенным увеличением надежности хранения данных в массиве. В алгоритме RAID 6 используются два независимых механизма вычисления контрольных значений, что позволяет восстанавливать данные в случае отказа дисков и/или блоков данных. В RAID 6 используются два интеллектуальных метода восстановления данных – 2D-XOR и P+Q.
Эти два метода, применяемых в RAID 6, используют разные алгоритмы, в результате чего существенно меняется поведение и производительность дискового ввода/вывода. Это можно показать на примере записи одной дорожки диска. Дорожка, как показано на Рисунке 1, состоит из одинакового дискового объема для каждого диска, который адресуется RAID-контроллером непрерывно. Каждый сегмент диска называется дорожкой. Следовательно, размер дорожки массива равен размеру дорожки диска, умноженному на количество дисков в массиве. RAID-контроллеры также управляют кэш-памятью RAID, объем которой соответствует объему дорожки, поэтому размер кэш-памяти RAID делится на части, равные объему дорожки.
Рисунок 1. Дорожка состоит из одинакового количества данных с каждого диска, которое адресуется RAID-контроллером непрерывно.
Для больших операций записи, а также для операций обратной записи с кэш-памятью все дорожки данных записываются новыми данными. При этом соответствующие контрольные значения также перезаписываются. В этом случае алгоритм P+Q RAID 6 работает эффективно. Алгоритмы 2D-XOR RAID 6 должны обрабатывать запись дорожки как набор записей, поэтому в данном случае они неэффективны. Для работы RAID на высоком уровне необходимо, чтобы решения 2D-XOR RAID 6 эффективно работали с кэш-памятью, и это можно реализовать с помощью организации нескольких дорожек данных. При этом в кэш-памяти RAID будет меньше разных дорожек.
Алгоритм P+Q RAID 6 обеспечивает запись дорожки таким же способом и с такой же скоростью, как и в случае RAID 5. Последовательность, приведенная ниже, иллюстрирует большую операцию записи, но применима также и к операции обратной записи кэш-памяти RAID.
1. Все данные, которые должны быть записаны на диск, сначала передаются в интеллектуальную память подсистемы ввода/вывода. Это выполняется при помощи операции прямого доступа к памяти, которая управляется и выполняется процессором ввода/вывода интеллектуальной подсистемы ввода/вывода RAID.
2. Затем вычисляются контрольные значения (P и Q) на основе записываемых данных и параметров алгоритма RAID. Эти вычисления производятся над каждым байтом данных. Они выполняются процессором ввода/вывода, освобождая центральный процессор от этой операции, требующей большого объема вычислений.
3. Затем записываемые данные и контрольные значения P и Q записываются на дорожку диска под управлением алгоритма RAID, который выполняется на процессоре ввода/вывода.
Эта последовательность иллюстрирует полный процесс, необходимый для реализации высоконадежного алгоритма P+Q RAID 6.
Преимущества и недостатки RAID 6
Концептуально уровень RAID 6 очень похож на RAID 5, за исключением одной важнейшей особенности – возможности справляться с более чем одним отказом устройства без прерывания доступа к данным, и более того – без потери данных. В этом заключается основное преимущество по сравнению с RAID 5, и это важно.
Однако такая схема защиты данных имеет и некоторые слабые стороны. Например, при одинаковом количестве дисков в каждом массиве стоимость решения RAID 6 за мегабайт выше, чем стоимость массива RAID 5 из-за того, что в RAID 6 для контроля данных используются два диска, а не один, как в RAID 5. Даже при использовании одинакового количества физических дисков полезный объем в случае RAID 6 будет меньше на один диск, что увеличивает стоимость полезного дискового пространства.
Еще один недостаток – уменьшение скорости записи. Его значение зависит от реализации. В отличие от RAID 5, однако, здесь имеются несколько различных методов, которые можно применять при реализации RAID 6, а также некоторые методы двухдисковой защиты в случае использования сочетания других уровней RAID.
Заключение
Эффективные системы хранения данных продолжают оставаться «головной болью» в корпоративных вычислительных средах, и для повышения коэффициента готовности большинство организаций используют дисковые массивы RAID 5 в своих серверах, сетях и интернет-системах. Однако на текущий момент такие корпоративные вычислительные среды все больше отличает возрастание количества дисковых устройств большой емкости, их объединение в системы хранения данных и совместное использование дисковой памяти. Множество серверов используют общие системы хранения данных, и одна авария может вызвать останов многих систем. В результате эволюция серверных экосистем привела к появлению нового уровня RAID — RAID 6.
Различные поставщики предлагают разные варианты массивов RAID, которые могут выполнять самые разные функции. Но уровень RAID 6 предоставляет расширенные возможности защиты данных, соответствующие изменяющимся потребностям корпоративных вычислительных сред, поэтому он может сменить RAID 5 в серверах общего назначения, например в файловых серверах и Web-серверах, по мере перехода на совместно используемую дисковую память, а также по мере роста объема дисковых массивов и самих дисков. В своих процессорах ввода/вывода Intel® IOP331 and IOP333 корпорация Intel уже сейчас предлагает аппаратную реализацию алгоритмов RAID 6.
Источник:Intel.ru