Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Данные распределяются по дискам одним из нескольких способов, называемых уровнями RAID, в зависимости от требуемого уровня избыточности и производительности. Различные схемы или схемы распределения данных называются словом «RAID», за которым следует число, например, RAID 0 или RAID 1. Каждая схема или уровень RAID обеспечивает различный баланс между ключевыми целями: надежность , доступность , производительность и емкость . Уровни RAID выше, чем RAID 0, обеспечивают защиту от неисправимых ошибок чтения секторов , а также от сбоев целых физических дисков.

История [ править ]

Термин «RAID» был изобретен Дэвидом Паттерсоном , Гартом А. Гибсоном и Рэнди Кацем в Калифорнийском университете в Беркли в 1987 году. В их статье «Случай избыточных массивов недорогих дисков (RAID)», опубликованной в июне 1988 года, На конференции SIGMOD они утверждали, что самые производительные дисковые накопители для мэйнфреймов того времени могли быть побеждены по производительности рядом недорогих накопителей, которые были разработаны для растущего рынка персональных компьютеров . Хотя количество отказов будет расти пропорционально количеству дисков, при настройке на резервирование надежность массива может намного превзойти надежность любого большого отдельного диска. [4]

Хотя эта терминология еще не используется, технологии пяти уровней RAID, названные в июньской статье 1988 года, использовались в различных продуктах до публикации статьи [3], включая следующие:

  • Зеркалирование (RAID 1) было хорошо развито в 1970-х годах, включая, например, тандемные системы NonStop .
  • В 1977 году Норман Кен Оучи из IBM подал патент, раскрывающий то, что впоследствии было названо RAID 4. [5]
  • Примерно в 1983 году DEC начала поставки дисковых накопителей RA8X с зеркальным копированием подсистемы (теперь известных как RAID 1) как части своей подсистемы HSC50. [6]
  • В 1986 году Кларк и др. в IBM подали патент, раскрывающий то, что впоследствии было названо RAID 5. [7]
  • Примерно в 1988 году DataVault от Thinking Machines использовала коды исправления ошибок (теперь известные как RAID 2) в массиве дисковых накопителей. [8] Подобный подход использовался в начале 1960-х годов на IBM 353 . [9] [10]

Позднее промышленные производители изменили аббревиатуру RAID на «избыточный массив независимых дисков». [2] [11] [12] [13]

Обзор [ править ]

Многие уровни RAID используют схему защиты от ошибок, называемую « четность », широко используемый метод в информационных технологиях для обеспечения отказоустойчивости в заданном наборе данных. Большинство из них используют простую операцию XOR , но RAID 6 использует две отдельные четности, основанные соответственно на сложении и умножении в определенном поле Галуа или исправлении ошибок Рида – Соломона . [14]

RAID также может обеспечить безопасность данных с помощью твердотельных накопителей (SSD) без затрат на систему, полностью состоящую из SSD. Например, быстрый SSD можно отзеркалить с механическим приводом. Для такой конфигурации, обеспечивающей значительное преимущество в скорости, необходим соответствующий контроллер, который использует быстрый SSD для всех операций чтения. Adaptec называет это «гибридным RAID». [15]

Стандартные уровни [ править ]

Серверы хранения с 24 жесткими дисками каждый и встроенными аппаратными контроллерами RAID, поддерживающими различные уровни RAID

Изначально существовало пять стандартных уровней RAID, но появилось множество вариаций, включая несколько вложенных уровней и множество нестандартных уровней (в основном проприетарных ). Уровни RAID и связанные с ними форматы данных стандартизированы Промышленной ассоциацией сетей хранения данных (SNIA) в стандарте Common RAID Disk Drive Format (DDF): [16] [17]

RAID 0 состоит из чередования , но без зеркалирования или четности . По сравнению с составным томом емкость тома RAID 0 такая же; это сумма емкостей дисков в наборе. Но поскольку при чередовании содержимое каждого файла распределяется между всеми дисками в наборе, отказ любого диска приводит к потере всего тома RAID 0 и всех файлов. Для сравнения, составной том сохраняет файлы на исправных дисках. Преимущество RAID 0 заключается в том, что пропускная способность операций чтения и записи для любого файла умножается на количество дисков, поскольку, в отличие от составных томов, чтение и запись выполняются одновременно . [11] Цена заключается в повышенной уязвимости к сбоям дисков - поскольку сбой любого диска в настройке RAID 0 приводит к потере всего тома, средняя частота сбоев тома возрастает с увеличением количества подключенных дисков.

RAID 1 состоит из зеркального отображения данных без контроля четности и чередования. Данные записываются одинаково на два или более дисков, тем самым создавая «зеркальный набор» дисков. Таким образом, любой запрос чтения может быть обработан любым диском в наборе. Если запрос транслируется на каждый диск в наборе, его может обслуживать диск, который первым обращается к данным (в зависимости от времени поиска и задержки вращения.), улучшая производительность. Стабильная пропускная способность чтения, если контроллер или программное обеспечение оптимизированы для этого, приближается к сумме пропускной способности каждого диска в наборе, как и для RAID 0. Фактическая пропускная способность чтения большинства реализаций RAID 1 ниже, чем у самого быстрого диска. Пропускная способность записи всегда ниже, потому что каждый диск должен быть обновлен, а самый медленный диск ограничивает производительность записи. Массив продолжает работать, пока работает хотя бы один диск. [11]

RAID 2 состоит из чередования битов с выделенной проверкой четности кода Хэмминга . Все вращение шпинделя диска синхронизировано, а данные чередуются , так что каждый последовательный бит находится на другом диске. Четность кода Хэмминга вычисляется по соответствующим битам и сохраняется по крайней мере на одном диске четности. [11] Этот уровень имеет только историческое значение; хотя он использовался на некоторых ранних машинах (например, Thinking Machines CM-2), [18] по состоянию на 2014 год он не используется ни в одной коммерчески доступной системе. [19]

RAID 3 состоит из чередования байтов с выделенной четностью. Все вращение шпинделя диска синхронизировано, и данные распределяются так, что каждый последовательный байт находится на другом диске. Четность вычисляется по соответствующим байтам и сохраняется на выделенном диске четности. [11] Хотя реализации существуют, [20] RAID 3 на практике обычно не используется.

RAID 4 состоит из чередования на уровне блоков с выделенной четностью. Этот уровень ранее использовался NetApp , но сейчас он в значительной степени заменен собственной реализацией RAID 4 с двумя дисками четности, называемой RAID-DP . [21] Основным преимуществом RAID 4 перед RAID 2 и 3 является параллелизм ввода-вывода: в RAID 2 и 3 для одной операции чтения ввода-вывода требуется чтение всей группы дисков с данными, а в RAID 4 - один ввод-вывод. операция чтения не должна распространяться на все диски с данными. В результате можно выполнять больше операций ввода-вывода параллельно, повышая производительность небольших передач. [1]

RAID 5 состоит из чередования на уровне блоков с распределенной четностью. В отличие от RAID 4, информация о четности распределяется между дисками, поэтому для работы требуются все диски, кроме одного. При выходе из строя одного диска последующие чтения могут быть рассчитаны на основе распределенной четности, так что данные не будут потеряны. Для RAID 5 требуется как минимум три диска. [11] Как и все концепции единой четности, большие реализации RAID 5 подвержены системным сбоям из-за тенденций, касающихся времени восстановления массива и вероятности отказа диска во время восстановления (см. Раздел « Увеличение времени восстановления и вероятности отказа » ниже). [22] Восстановление массива требует чтения всех данных со всех дисков, что дает возможность сбоя второго диска и потери всего массива.

RAID 6 состоит из чередования на уровне блоков с двойной распределенной четностью. Двойная четность обеспечивает отказоустойчивость до двух отказавших дисков. Это делает группы RAID большего размера более практичными, особенно для систем с высокой доступностью, поскольку для восстановления дисков большой емкости требуется больше времени. Для RAID 6 требуется как минимум четыре диска. Как и в случае с RAID 5, отказ одного диска приводит к снижению производительности всего массива до тех пор, пока неисправный диск не будет заменен. [11] С массивом RAID 6, использующим диски от различных источников и производителей, можно смягчить большинство проблем, связанных с RAID 5. Чем больше емкость диска и чем больше размер массива, тем важнее становится выбор. RAID 6 вместо RAID 5. [23] RAID 10 также сводит к минимуму эти проблемы.[24]

Вложенный (гибридный) RAID [ править ]

В то , что первоначально был назван гибридный RAID , [25] многие контроллеры хранения позволяют уровни RAID быть вложенными. Элементами RAID могут быть как отдельные диски, так и сами массивы. Массивы редко бывают вложенными более чем на один уровень. [26]

Последний массив известен как верхний массив. Когда верхним массивом является RAID 0 (например, RAID 1 + 0 и RAID 5 + 0), большинство поставщиков опускают "+" (что дает RAID 10 и RAID 50 соответственно).

  • RAID 0 + 1: создает две полосы и отражает их. Если происходит сбой одного диска, это означает, что одно из зеркал отказало, в этот момент оно эффективно работает как RAID 0 без избыточности. Во время перестройки возникает значительно более высокий риск, чем при восстановлении RAID 1 + 0, поскольку должны быть прочитаны все данные со всех дисков в оставшейся полосе, а не только с одного диска, что увеличивает вероятность неисправимой ошибки чтения (URE) и значительно увеличивает окно восстановления. [27] [28] [29]
  • RAID 1 + 0: (см .: RAID 10 ) создает чередующийся набор из серии зеркальных дисков. Массив может выдерживать множественные потери дисков, пока ни одно зеркало не теряет все свои диски. [30]
  • JBOD RAID N + N: с помощью JBOD ( просто связки дисков ) можно объединять диски, а также тома, такие как наборы RAID. При увеличении емкости диска задержка записи и время восстановления резко увеличиваются (особенно, как описано выше, с RAID 5 и RAID 6). Разделив больший набор RAID N на меньшие подмножества и объединив их с помощью линейного JBOD, [ требуется пояснение ]время записи и восстановления будет сокращено. Если аппаратный RAID-контроллер не поддерживает вложение линейного JBOD с RAID N, то линейный JBOD может быть достигнут с помощью программного RAID уровня ОС в сочетании с отдельными томами подмножества RAID N, созданными в одном или нескольких аппаратных RAID-контроллерах. Помимо резкого увеличения скорости, это также дает существенное преимущество: возможность запускать линейный JBOD с небольшим набором дисков и иметь возможность расширять общий набор дисками разного размера позже (со временем диски большего размера). размер становится доступным на рынке). Есть еще одно преимущество в форме аварийного восстановления (если произойдет сбой подмножества RAID N, то данные на других подмножествах RAID N не будут потеряны, что сокращает время восстановления). [ необходима цитата ]

Нестандартные уровни [ править ]

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

  • Linux MD RAID 10 предоставляет общий драйвер RAID, который в своей «близкой» компоновке по умолчанию представляет собой стандартный RAID 1 с двумя дисками и стандартный RAID 1 + 0 с четырьмя дисками; однако он может включать любое количество накопителей, включая нечетные. Благодаря своей «удаленной» компоновке MD RAID 10 может работать как с чередованием, так и с зеркалированием, даже если в f2компоновке всего два диска ; при этом выполняется зеркалирование с чередованием чтения, что обеспечивает производительность чтения RAID 0. Обычный RAID 1, предоставляемый программным RAID Linux , не выполняет чередование чтения, но может выполнять чтение параллельно. [30] [31] [32]
  • В Hadoop есть система RAID, которая генерирует файл четности путем xor-гирования полосы блоков в одном файле HDFS. [33]
  • BeeGFS , параллельная файловая система, имеет внутреннее чередование (сравнимо с файловым RAID0) и репликацию (сравнимо с файловым RAID10) для агрегирования пропускной способности и емкости нескольких серверов и обычно базируется на базовом RAID для создания диска. сбои прозрачны.
  • Декластеризованный RAID-массив разбрасывает двойные (или более) копии данных по всем дискам (возможно, сотням) в подсистеме хранения, сохраняя при этом достаточно свободной емкости, чтобы несколько дисков могли выйти из строя. Рассеяние основано на алгоритмах, создающих видимость произвола. Когда один или несколько дисков выходят из строя, отсутствующие копии восстанавливаются до этой резервной емкости, опять же произвольно. Поскольку восстановление выполняется со всех оставшихся дисков, он работает намного быстрее, чем с традиционным RAID, что снижает общее воздействие на клиентов системы хранения.

Реализации [ править ]

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

Аппаратное [ править ]

Конфигурация аппаратного RAID [ править ]

Аппаратные контроллеры RAID можно настроить с помощью BIOS карты или дополнительного ПЗУ перед загрузкой операционной системы , а после загрузки операционной системы у производителя каждого контроллера доступны собственные служебные программы настройки. В отличие от контроллеров сетевого интерфейса для Ethernet , которые обычно можно настроить и обслужить полностью с помощью общих парадигм операционной системы, таких как ifconfig в Unix , без необходимости в каких-либо сторонних инструментах, каждый производитель каждого RAID-контроллера обычно предоставляет свои собственные проприетарные программные инструменты. для каждой операционной системы, которую они считают поддерживаемой, обеспечиваяпривязка к поставщику и усугубление проблем с надежностью. [34]

Например, во FreeBSD , чтобы получить доступ к конфигурации RAID-контроллеров Adaptec , пользователям необходимо включить уровень совместимости с Linux и использовать инструменты Linux от Adaptec [35], что потенциально может поставить под угрозу стабильность, надежность и безопасность их настройки, особенно при долгосрочном взгляде. [34]

Некоторые другие операционные системы реализовали свои собственные общие структуры для взаимодействия с любым RAID-контроллером и предоставляют инструменты для мониторинга состояния тома RAID, а также для облегчения идентификации диска с помощью мигания светодиода, управления аварийными сигналами и назначения дисков горячего резервирования из операционной системы без необходимость перезагрузки в BIOS карты. Например, это был подход, использованный OpenBSD в 2005 году с его псевдоустройством bio (4) и утилитой bioctl , которые обеспечивают состояние громкости и позволяют управлять светодиодами / тревогами / горячими источниками, а также датчиками (включая датчик привода ) для мониторинга здоровья; [36] этот подход впоследствии был принят и расширен NetBSD.и в 2007 году. [37]

Программное [ править ]

Программные реализации RAID предоставляются многими современными операционными системами . Программный RAID может быть реализован как:

  • Слой что абстрагирует несколько устройств, таким образом , предоставляя единое виртуальное устройство (например, Linux ядра «ы мД и SoftRAID OpenBSD) в
  • Более общий менеджер логических томов (входит в состав большинства операционных систем серверного класса, таких как Veritas или LVM ).
  • Компонент файловой системы (например, ZFS , Spectrum Scale или Btrfs )
  • Уровень, который находится над любой файловой системой и обеспечивает защиту данных пользователя (например, RAID-F) [38]

Некоторые продвинутые файловые системы предназначены для организации данных на нескольких устройствах хранения напрямую, без необходимости использования стороннего диспетчера логических томов:

  • ZFS поддерживает эквиваленты RAID 0, RAID 1, RAID 5 (RAID-Z1) с одинарной четностью, RAID 6 (RAID-Z2) с двойной четностью и версию с тройной четностью (RAID-Z3), также называемую RAID 7. . [39] Поскольку он всегда чередуется с vdev верхнего уровня, он поддерживает эквиваленты вложенных уровней RAID 1 + 0, 5 + 0 и 6 + 0 (а также чередующиеся наборы с тройной четностью), но не другие вложенные комбинации. ZFS - это собственная файловая система для Solaris и illumos , а также доступна для FreeBSD и Linux. Реализации ZFS с открытым исходным кодом активно развиваются в рамках зонтичного проекта OpenZFS . [40] [41] [42] [43] [44]
  • Spectrum Scale , изначально разработанный IBM для потоковой передачи мультимедиа и масштабируемой аналитики, поддерживает схемы защиты декластеризованных RAID до n + 3. Особенностью является приоритет динамического восстановления, который работает в фоновом режиме с малым воздействием, пока блок данных не достигнет избыточности n + 0, и в этом случае этот блок быстро восстанавливается как минимум до n + 1. Кроме того, Spectrum Scale поддерживает RAID 1. [45]
  • Btrfs поддерживает RAID 0, RAID 1 и RAID 10 (RAID 5 и 6 находятся в стадии разработки). [46] [47]
  • Первоначально XFS была разработана для предоставления интегрированного диспетчера томов, который поддерживает объединение, зеркальное отображение и чередование нескольких физических устройств хранения. [48] Однако при реализации XFS в ядре Linux отсутствует интегрированный менеджер томов. [49]

Многие операционные системы предоставляют реализации RAID, в том числе следующие:

  • Hewlett-Packard «s OpenVMS операционная система поддерживает RAID 1. зеркальными дисков, называемый„теневой набор“, может быть в разных местах , чтобы помочь в восстановлении после сбоев. [50]
  • MacOS и macOS Server от Apple поддерживают RAID 0, RAID 1 и RAID 1 + 0. [51] [52]
  • FreeBSD поддерживает RAID 0, RAID 1, RAID 3 и RAID 5, а также все вложения через модули GEOM и ccd. [53] [54] [55]
  • Linux «s М.Д. поддерживает RAID 0, RAID 1, RAID 4, RAID 5, RAID 6, и все вложения. [56] Также поддерживаются определенные операции изменения формы / размера / расширения. [57]
  • Microsoft Windows поддерживает RAID 0, RAID 1 и RAID 5 с использованием различных программных реализаций. Диспетчер логических дисков , представленный в Windows 2000 , позволяет создавать тома RAID 0, RAID 1 и RAID 5 с использованием динамических дисков , но это было ограничено только профессиональными и серверными версиями Windows до выпуска Windows 8 . [58] [59] Windows XP может быть изменена, чтобы разблокировать поддержку RAID 0, 1 и 5. [60] Windows 8 и Windows Server 2012 представили RAID-подобную функцию, известную как Storage Spaces, который также позволяет пользователям указывать зеркальное отображение, четность или отсутствие избыточности для каждой папки отдельно. Эти параметры аналогичны RAID 1 и RAID 5, но реализованы на более высоком уровне абстракции. [61]
  • NetBSD поддерживает RAID 0, 1, 4 и 5 посредством своей программной реализации под названием RAIDframe. [62]
  • OpenBSD поддерживает RAID 0, 1 и 5 посредством своей программной реализации под названием softraid. [63]

Если загрузочный диск выходит из строя, система должна быть достаточно сложной, чтобы иметь возможность загружаться с оставшегося диска или дисков. Например, рассмотрим компьютер, диск которого настроен как RAID 1 (зеркальные диски); если первый диск в массиве выходит из строя, то загрузчик первой ступени может оказаться недостаточно сложным, чтобы попытаться загрузить загрузчик второй ступени со второго диска в качестве запасного варианта. Загрузчик второй ступени для FreeBSD может загружать ядро из такого массива. [64]

На основе прошивки и драйверов [ править ]

SATA 3.0 контроллера , который обеспечивает функциональность RAID с помощью патентованной прошивки и драйверов

Программно реализованный RAID не всегда совместим с процессом загрузки системы и, как правило, непрактичен для настольных версий Windows. Однако аппаратные RAID-контроллеры дорогие и проприетарные. Чтобы восполнить этот пробел, были введены недорогие «RAID-контроллеры», которые не содержат выделенного чипа RAID-контроллера, а просто стандартную микросхему контроллера дисковода с проприетарными прошивками и драйверами. Во время ранней загрузки RAID реализуется микропрограммой, и после полной загрузки операционной системы управление берет на себя драйверы. Следовательно, такие контроллеры могут не работать, если поддержка драйверов для операционной системы хоста недоступна. [65] Примером является технология Intel Rapid Storage , реализованная на многих материнских платах потребительского уровня.[66] [67]

Поскольку требуется минимальная аппаратная поддержка, эта реализация также называется «программным RAID с аппаратной поддержкой», [68] [69] [70] «гибридной моделью» RAID, [70] или даже «поддельным RAID». [71] Если поддерживается RAID 5, оборудование может предоставлять аппаратный ускоритель XOR. Преимущество этой модели перед чисто программным RAID состоит в том, что - при использовании режима резервирования - загрузочный диск защищен от сбоев (из-за прошивки) во время процесса загрузки даже до того, как драйверы операционной системы вступят в силу. [70]

Целостность [ править ]

Очистка данных (называемая в некоторых средах считыванием патрулей ) включает периодическое чтение и проверку контроллером RAID всех блоков в массиве, включая те, к которым иным образом не обращались. Это обнаруживает плохие блоки перед использованием. [72] Очистка данных проверяет наличие сбойных блоков на каждом запоминающем устройстве в массиве, но также использует избыточность массива для восстановления сбойных блоков на одном диске и переназначения восстановленных данных на запасные блоки в другом месте на диске. [73]

Часто RAID-контроллер конфигурируется так, чтобы «отбрасывать» компонентный диск (то есть предполагать, что компонентный диск вышел из строя), если диск не отвечает в течение восьми секунд или около того; это может привести к тому, что контроллер массива отключит исправный диск, потому что этому диску не было предоставлено достаточно времени для завершения процедуры восстановления внутренней ошибки. Следовательно, использование потребительских дисков с RAID может быть рискованным, и диски так называемого «корпоративного класса» ограничивают время восстановления после ошибок, чтобы снизить риск. [ необходима цитата ] В настольных дисках Western Digital было определенное исправление. Утилита WDTLER.exe ограничивает время восстановления диска после ошибки. Утилита включила TLER (временное исправление ошибок), что ограничивает время восстановления после ошибки семью секундами. Примерно в сентябре 2009 года Western Digital отключила эту функцию на своих дисках для настольных ПК (таких как линейка Caviar Black), что сделало такие диски непригодными для использования в конфигурациях RAID. [74] Однако диски корпоративного класса Western Digital поставляются с завода с включенным TLER. Подобные технологии используют Seagate, Samsung и Hitachi. Поэтому для использования без RAID диск корпоративного класса с коротким таймаутом восстановления после ошибки, который нельзя изменить, менее подходит, чем настольный диск. [74] В конце 2010 года программа Smartmontools начала поддерживать конфигурацию ATA Error Recovery Control, что позволило инструменту настраивать многие жесткие диски настольного класса для использования в RAID-массивах. [74]

Несмотря на то, что RAID может защитить от сбоя физического диска, данные по-прежнему подвергаются разрушению оператором, программным обеспечением, оборудованием и вирусами. Многие исследования ссылаются на ошибку оператора как на частый источник неисправности [75] [76], такой как оператор сервера, заменяющий неправильный диск в неисправном RAID, и отключение системы (даже временное) в процессе. [77]

Массив может быть перегружен катастрофическим отказом, превышающим его возможности восстановления, и весь массив подвергается риску физического повреждения в результате пожара, стихийных бедствий и действий человека, однако резервные копии могут храниться за пределами площадки. Массив также уязвим для сбоя контроллера, потому что не всегда можно перенести его на новый, другой контроллер без потери данных. [78]

Слабые стороны [ править ]

Связанные сбои [ править ]

На практике диски часто одного возраста (с одинаковым износом) и подвержены одинаковым условиям эксплуатации. Поскольку многие отказы дисков происходят из-за механических проблем (которые более вероятны на старых накопителях), это нарушает предположения о независимой одинаковой частоте отказов среди накопителей; отказы фактически статистически коррелированы. [11] На практике вероятность второго сбоя до того, как будет восстановлена ​​первая (вызывающая потерю данных), выше, чем вероятность случайных сбоев. При исследовании около 100000 дисков вероятность отказа двух дисков в одном кластере в течение одного часа была в четыре раза выше, чем предсказывалось экспоненциальным статистическим распределением.- который характеризует процессы, в которых события происходят непрерывно и независимо с постоянной средней скоростью. Вероятность двух отказов за один и тот же 10-часовой период была вдвое выше, чем предсказывалось экспоненциальным распределением. [79]

Неустранимые ошибки чтения во время восстановления [ править ]

Неустранимые ошибки чтения (URE) представляют собой сбои чтения секторов, также известные как скрытые ошибки секторов (LSE). Ставка мера связана оценка средств массовой информации, неисправимой ошибки на бит (ВБО), как правило , гарантированно меньше , чем одного бита в 10 15 [ оспаривалось ] для корпоративного класса дисков ( SCSI , FC , SAS или SATA), и меньше , чем один бит в 10 14 [ оспаривается ]для настольных накопителей (IDE / ATA / PATA или SATA). Увеличение емкости дисков и большие экземпляры RAID 5 привели к тому, что максимальная частота ошибок недостаточна для гарантии успешного восстановления из-за высокой вероятности возникновения такой ошибки на одном или нескольких оставшихся дисках во время восстановления набора RAID. [11] [ устаревший источник ] [80] [ устаревший источник? ] При восстановлении схемы на основе четности, такие как RAID 5, особенно подвержены влиянию URE, поскольку они влияют не только на сектор, в котором они встречаются, но и на реконструированные блоки, использующие этот сектор для вычисления четности. [81]

Схемы на основе четности с двойной защитой, такие как RAID 6, пытаются решить эту проблему, обеспечивая избыточность, которая допускает отказы двух дисков; как обратная сторона, такие схемы страдают повышенным штрафом за запись - количество раз, когда носитель данных должен быть доступен во время одной операции записи. [82] Схемы, которые дублируют (зеркалируют) данные по принципу «диск-диск», например RAID 1 и RAID 10, имеют меньший риск от URE, чем схемы, использующие вычисление четности или зеркалирование между чередующимися наборами. [24] [83] Очистка данныхв качестве фонового процесса можно использовать для обнаружения URE и восстановления из них, что эффективно снижает риск их возникновения во время восстановления RAID и возникновения сбоев двух дисков. Восстановление URE включает в себя повторное отображение затронутых базовых секторов диска с использованием пула переназначения секторов диска; в случае обнаружения URE во время фоновой очистки, избыточность данных, обеспечиваемая полностью работоспособным набором RAID, позволяет восстановить недостающие данные и перезаписать их в переназначенный сектор. [84] [85]

Увеличение времени восстановления и вероятности отказа [ править ]

Емкость накопителя росла намного быстрее, чем скорость передачи, а количество ошибок по сравнению с этим снизилось лишь незначительно. Таким образом, восстановление дисков большей емкости может занять часы, если не дни, в течение которых другие диски могут выйти из строя или появиться необнаруженные ошибки чтения. Время восстановления также ограничено, если весь массив все еще работает с уменьшенной емкостью. [86] В массиве только с одним резервным диском (что относится к уровням RAID 3, 4 и 5, а также к «классическому» двухдисковому RAID 1) отказ второго диска приведет к полному отказу массива. Хотя среднее время наработки на отказ отдельных дисков(MTBF) со временем увеличивались, это увеличение отставало от увеличения емкости накопителей. Время восстановления массива после сбоя одного диска, а также вероятность второго сбоя во время восстановления со временем увеличивались. [22]

Некоторые комментаторы заявили, что RAID 6 в этом отношении является лишь «лейблом», потому что он лишь немного решит проблему в будущем. [22] Однако, согласно исследованию NetApp 2006 г., проведенному Berriman et al., Вероятность отказа снижается примерно в 3,800 раз (по сравнению с RAID 5) для правильной реализации RAID 6, даже при использовании обычных дисков. [87] [ цитата не найдена ] Тем не менее, если наблюдаемые в настоящее время технологические тенденции останутся неизменными, в 2019 году у массива RAID 6 будет такая же вероятность отказа, как у его аналога RAID 5 в 2010 году. [87] [ ненадежный источник? ]

Схемы зеркалирования, такие как RAID 10, имеют ограниченное время восстановления, поскольку для них требуется копия одного отказавшего диска, по сравнению со схемами четности, такими как RAID 6, которые требуют копии всех блоков дисков в наборе массива. Схемы тройной четности или тройного зеркалирования были предложены в качестве одного из подходов к повышению устойчивости к отказу дополнительных дисков в течение этого длительного периода восстановления. [87] [ ненадежный источник? ]

Атомарность [ править ]

Сбой системы или другое прерывание операции записи может привести к состояниям, в которых четность несовместима с данными из-за неатомарности процесса записи, так что четность не может использоваться для восстановления в случае сбоя диска. Это обычно называется отверстием для записи RAID 5. [11] Отверстие для записи RAID - известная проблема повреждения данных в старых и недорогих RAID-массивах, вызванная прерыванием записи на диск. [88] Отверстие для записи можно устранить с помощью ведения журнала упреждающей записи . Это было исправлено в mdadm путем введения для этой цели специального устройства журналирования (чтобы избежать потери производительности, как правило, предпочтительны SSD и NVM ). [89] [90]

Это малоизвестный и редко упоминаемый режим отказа для избыточных систем хранения, которые не используют транзакционные функции. Исследователь баз данных Джим Грей написал: «Обновление на месте - ядовитое яблоко» на заре коммерциализации реляционных баз данных. [91]

Надежность кеширования записи [ править ]

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

См. Также [ править ]

  • Сетевое хранилище (NAS)
  • Архитектуры дисков без RAID
  • Резервный массив независимой памяти
  • УМНАЯ

Ссылки [ править ]

  1. ^ a b c Паттерсон, Дэвид ; Гибсон, Гарт А .; Кац, Рэнди (1988). Случай для избыточных массивов недорогих дисков (RAID) (PDF) . SIGMOD Конференции . Проверено 31 декабря 2006 .
  2. ^ a b «Первоначально называвшаяся избыточным массивом недорогих дисков, концепция RAID была впервые разработана в конце 1980-х годов Паттерсоном, Гибсоном и Кацем из Калифорнийского университета в Беркли (Консультативный совет RAID с тех пор заменил термин Недорого с Independent.) "Основы сетей хранения данных; Мита Гупта; Cisco Press; ISBN 978-1-58705-065-7 ; Приложение. 
  3. ^ a b Рэнди Х. Кац (октябрь 2010 г.). «RAID: личное воспоминание о том, как хранилище стало системой» (PDF) . eecs.umich.edu . Компьютерное общество IEEE . Проверено 18 января 2015 . Мы не были первыми, кто придумал заменить то, что Паттерсон назвал медленным большим дорогим диском (SLED), массивом недорогих дисков. Например, концепция зеркального копирования дисков, впервые предложенная Tandem, была хорошо известна, и некоторые продукты для хранения данных уже были созданы на основе массивов небольших дисков.
  4. Фрэнк Хейс (17 ноября 2003 г.). «История до сих пор» . Компьютерный мир . Проверено 18 ноября, 2016 . Паттерсон вспомнил начало своего проекта RAID в 1987 году. [...] 1988: Дэвид А. Паттерсон возглавляет команду, которая определяет стандарты RAID для повышения производительности, надежности и масштабируемости.
  5. ^ Патент США 4092732 , Norman Кен Оучи, «Система для восстановления данных , хранящихся в блоке памяти Failed», выданном 1978-05-30 
  6. ^ "Техническое руководство по аппаратному обеспечению HSC50 / 70" (PDF) . Дек . Июль 1986. С. 29, 32 . Проверено 3 января 2014 .
  7. ^ Патент США 4761785 , Brian E. Clark и др., «Паритет Распространение по повышению хранения доступа», выданном 1988-08-02 
  8. ^ Патент США 4899342 , Дэвид Поттер и др. др., "Метод и устройство для работы с многоэлементным массивом воспоминаний", выпущенный 1990-02-06  См. также The Connection Machine (1988)
  9. ^ "Система обработки данных IBM 7030: Справочное руководство" (PDF) . bitsavers.trailing-edge.com . IBM . 1960. с. 157 . Проверено 17 января 2015 . Поскольку большое количество бит обрабатывается параллельно, целесообразно использовать биты проверки и исправления ошибок (ECC), и каждый 39-битный байт состоит из 32 битов данных и семи битов ECC. Биты ECC сопровождают все данные, передаваемые на высокоскоростные диски или с них, и при чтении используются для исправления одиночной битовой ошибки в байте и обнаружения двойных и большинства множественных ошибок в байте.
  10. ^ «IBM Stretch (также известная как IBM 7030 Data Processing System)» . brouhaha.com . 2009-06-18 . Проверено 17 января 2015 . Типичная система обработки данных IBM 7030 могла бы состоять из следующих блоков: [...] Дисковое хранилище IBM 353 - аналогично IBM 1301 Disk File, но намного быстрее. 2097152 (2 ^ 21) 72-битных слова (64 бита данных и 8 битов ECC), 125 000 слов в секунду
  11. ^ Б с д е е г ч я J Chen, Peter; Ли, Эдвард; Гибсон, Гарт; Кац, Рэнди; Паттерсон, Дэвид (1994). «RAID: высокопроизводительное и надежное вторичное хранилище». ACM Computing Surveys . 26 (2): 145–185. CiteSeerX 10.1.1.41.3889 . DOI : 10.1145 / 176979.176981 . S2CID 207178693 .  
  12. ^ Дональд, Л. (2003). "MCSA / MCSE 2006 JumpStart Computer and Network Basics" (2-е изд.). Глазго: SYBEX. Цитировать журнал требует |journal=( помощь )
  13. ^ Хау, Денис (ред.). Избыточные массивы независимых дисков от FOLDOC . Бесплатный он-лайн словарь по вычислительной технике . Имперский колледж, факультет вычислительной техники . Проверено 10 ноября 2011 .
  14. ^ Докинз, Билл и Джонс, Арнольд. "Общие RAID Disk Data Format Specification" архивации 2009-08-24 в Wayback Machine [Storage Networking Industry Association] Colorado Springs, 28 июля 2006. Проверено 22 февраля 2011 года.
  15. ^ «Решения Adaptec Hybrid RAID» (PDF) . Adaptec.com . Adaptec. 2012 . Проверено 7 сентября 2013 .
  16. ^ "Стандартный формат дискового накопителя RAID (DDF)" . SNIA.org . СНИА . Проверено 26 августа 2012 .
  17. ^ "Словарь СНИА" . SNIA.org . СНИА . Проверено 24 августа 2010 .
  18. ^ Эндрю С. Таненбаум. Структурированная компьютерная организация 6-е изд . п. 95.
  19. ^ Хеннесси, Джон; Паттерсон, Дэвид (2006). Компьютерная архитектура: количественный подход, 4-е изд . п. 362. ISBN. 978-0123704900.
  20. ^ «Справочник FreeBSD, Глава 20.5 GEOM: Модульная структура преобразования дисков» . Проверено 20 декабря 2012 .
  21. ^ Белый, Джей; Люэт, Крис (май 2010 г.). «RAID-DP: реализация NetApp RAID с двойной четностью для защиты данных. Технический отчет NetApp TR-3298» . Проверено 2 марта 2013 .
  22. ^ a b c Ньюман, Генри (17 сентября 2009 г.). «Дни рейда могут быть сочтены» . EnterpriseStorageForum . Проверено 7 сентября 2010 .
  23. ^ «Почему RAID 6 перестанет работать в 2019 году» . ZDNet . 22 февраля 2010 г.
  24. ^ a b Скотт Лоу (2009-11-16). «Как защитить себя от неисправимых ошибок чтения (URE), связанных с RAID. Techrepublic» . Проверено 1 декабря 2012 .
  25. ^ Виджаян, S .; Selvamani, S .; Виджаян, S (1995). «Дисковый массив с двойной штриховкой: высоконадежная архитектура гибридного RAID» . Труды Международной конференции по параллельной обработке 1995: Том 1 . CRC Press . стр. I-146 и далее . ISBN 978-0-8493-2615-8.
  26. ^ "Что такое RAID (избыточный массив недорогих дисков)?" . StoneFly.com . Проверено 20 ноября 2014 .
  27. ^ "Почему RAID 1 + 0 лучше, чем RAID 0 + 1?" . aput.net . Проверено 23 мая 2016 .
  28. ^ «RAID 10 против RAID 01 (RAID 1 + 0 против RAID 0 + 1), объясненный с помощью схемы» . www.thegeekstuff.com . Проверено 23 мая 2016 .
  29. ^ «Сравнение RAID 10 и RAID 01 | SMB IT Journal» . www.smbitjournal.com . Проверено 23 мая 2016 .
  30. ^ a b Джеффри Б. Лейтон: «Введение в Nested-RAID: RAID-01 и RAID-10» , Linux Magazine, 6 января 2011 г.
  31. ^ «Производительность, инструменты и общие вопросы для костей» . tldp.org . Проверено 25 декабря 2013 .
  32. ^ "Заглавная страница - Linux-рейд" . osdl.org. 2010-08-20. Архивировано из оригинала на 2008-07-05 . Проверено 24 августа 2010 .
  33. ^ «Рейд Hdfs» . Hadoopblog.blogspot.com. 2009-08-28 . Проверено 24 августа 2010 .
  34. ^ a b "3.8:" Хакеры утерянного рейда " " . Песни выпуска OpenBSD . OpenBSD . 2005-11-01 . Проверено 23 марта 2019 .
  35. ^ Скотт Лонг; Adaptec, Inc (2000). «aac (4) - драйвер контроллера Adaptec AdvancedRAID» . Перекрестная ссылка BSD . FreeBSD . Выложите резюме .
  36. Тео де Раадт (9 сентября 2005 г.). «Поддержка управления RAID появится в OpenBSD 3.8» . misc @ (Список рассылки). OpenBSD .
  37. ^ Константин А. Murenin (2010-05-21). «1.1. Мотивация; 4. Драйверы датчиков; 7.1. NetBSD envsys / sysmon». Аппаратные датчики OpenBSD - мониторинг окружающей среды и управление вентиляторами ( тезис MMath ). Университет Ватерлоо : UWSpace. hdl : 10012/5234 . Идентификатор документа: ab71498b6b1a60 ff817 b29d56997a418.
  38. ^ «RAID поверх файловой системы» . Проверено 22 июля 2014 .
  39. ^ «Производительность, емкость и целостность ZFS Raidz» . calomel.org . Проверено 26 июня 2017 года .
  40. ^ "ZFS -illumos" . illumos.org . 2014-09-15 . Проверено 23 мая 2016 .
  41. ^ «Создание и уничтожение пулов устройств хранения данных ZFS - Руководство администратора Oracle Solaris ZFS» . Корпорация Oracle . 2012-04-01 . Проверено 27 июля 2014 .
  42. ^ «20.2. Файловая система Z (ZFS)» . freebsd.org . Архивировано из оригинала на 2014-07-03 . Проверено 27 июля 2014 .
  43. ^ «RAID-Z с двойной четностью (raidz2) (Руководство администратора Solaris ZFS)» . Корпорация Oracle . Проверено 27 июля 2014 .
  44. ^ «RAIDZ с тройной четностью (raidz3) (Руководство администратора Solaris ZFS)» . Корпорация Oracle . Проверено 27 июля 2014 .
  45. ^ Deenadhayalan, вира (2011). «Собственный RAID общей параллельной файловой системы (GPFS)» (PDF) . UseNix.org . IBM . Проверено 28 сентября 2014 .
  46. ^ "Btrfs Wiki: Список возможностей" . 2012-11-07 . Проверено 16 ноября 2012 .
  47. ^ "Btrfs Wiki: Список изменений" . 2012-10-01 . Проверено 14 ноября 2012 .
  48. ^ Филип Траутман; Джим Мостек. «Масштабируемость и производительность в современных файловых системах» . linux-xfs.sgi.com . Проверено 17 августа 2015 .
  49. ^ "Linux RAID Setup - XFS" . kernel.org . 2013-10-05 . Проверено 17 августа 2015 .
  50. ^ Предприятие, Hewlett Packard. «Документ поддержки HPE - Центр поддержки HPE» . support.hpe.com .
  51. ^ «Mac OS X: Как объединить наборы RAID в Дисковой утилите» . Проверено 4 января 2010 .
  52. ^ «Файловые системы сервера Apple Mac OS X» . Проверено 23 апреля 2008 .
  53. ^ "Страница руководства FreeBSD System Manager для GEOM (8)" . Проверено 19 марта 2009 .
  54. ^ "Список рассылки freebsd-geom - новый класс / geom_raid5" . Проверено 19 марта 2009 .
  55. ^ "Руководство по интерфейсам ядра FreeBSD для CCD (4)" . Проверено 19 марта 2009 .
  56. ^ "Программное обеспечение RAID HowTo" . Проверено 10 ноября 2008 .
  57. ^ "mdadm (8) - справочная страница Linux" . Linux.Die.net . Проверено 20 ноября 2014 .
  58. ^ «Поддержка Windows Vista для жестких дисков с большим сектором» . Microsoft . 2007-05-29. Архивировано из оригинала на 2007-07-03 . Проверено 8 октября 2007 .
  59. ^ «Вы не можете выбрать или отформатировать раздел жесткого диска при попытке установить Windows Vista, Windows 7 или Windows Server 2008 R2» . Microsoft . 14 сентября 2011. Архивировано 3 марта 2011 года . Проверено 17 декабря 2009 года .
  60. ^ «Использование Windows XP для создания RAID 5» . Оборудование Тома . Проверено 24 августа 2010 года .
  61. ^ Синофски, Стивен. «Виртуализация хранилища для масштабирования, отказоустойчивости и эффективности» . Microsoft.
  62. ^ Мецгер, Перри (1999-05-12). «Объявление о выпуске NetBSD 1.4» . NetBSD.org . Фонд NetBSD . Проверено 30 января 2013 .
  63. ^ "Справочная страница OpenBSD softraid" . OpenBSD.org . Проверено 3 февраля 2018 .
  64. ^ "Справочник FreeBSD" . Глава 19 GEOM: Модульная структура преобразования дисков . Проверено 19 марта 2009 .
  65. ^ "Часто задаваемые вопросы о SATA RAID" . Ata.wiki.kernel.org. 2011-04-08 . Проверено 26 августа 2012 .
  66. ^ «Red Hat Enterprise Linux - Руководство администратора хранилища - Типы RAID» . redhat.com .
  67. ^ Чарли Рассел; Шэрон Кроуфорд; Эндрю Эдни (2011). Работа с Windows Small Business Server 2011 Essentials . O'Reilly Media, Inc. стр. 90. ISBN 978-0-7356-5670-3.
  68. ^ Уоррен Блок. «19.5. Программные RAID-устройства» . freebsd.org . Проверено 27 июля 2014 .
  69. Рональд Л. Крутц; Джеймс Конли (2007). Основы сетевой безопасности Wiley Pathways . Джон Вили и сыновья. п. 422. ISBN. 978-0-470-10192-6.
  70. ^ a b c «Аппаратный RAID или программный RAID: какая реализация лучше всего подходит для моего приложения? Технический документ Adaptec» (PDF) . adaptec.com .
  71. ^ Грегори Смит (2010). PostgreSQL 9.0: высокая производительность . Packt Publishing Ltd. стр. 31. ISBN 978-1-84951-031-8.
  72. ^ Ulf Troppens, Вольфганг Мюллер-Friedt, Rainer Erkens, Rainer Wolafka, Nils Haustein. Объяснение сетей хранения данных: основы и применение Fibre Channel SAN, NAS, ISCSI, InfiniBand и FCoE. Джон Уайли и сыновья, 2009. стр.39.
  73. ^ Компьютеры Dell, Справочная информация для RAID-контроллеров Dell PowerEdge, Дрю Хабас и Джон Сибер, перепечатано из Dell Power Solutions, февраль 2006 г. http://www.dell.com/downloads/global/power/ps1q06-20050212-Habas. pdf
  74. ^ a b c «Контроль восстановления после ошибок с помощью Smartmontools» . 2009. Архивировано из оригинального 28 сентября 2011 года . Проверено 29 сентября 2017 года .
  75. Грей, Джим (октябрь 1990 г.). «Перепись доступности тандемных систем с 1985 по 1990 годы» (PDF) . Транзакции IEEE о надежности . IEEE. 39 (4): 409–418. DOI : 10.1109 / 24.58719 . S2CID 2955525 .  
  76. ^ Мерфи, Брендан; Гент, Тед (1995). «Измерительная система и надежность программного обеспечения с использованием автоматизированного процесса сбора данных». Международная организация по обеспечению качества и надежности . 11 (5): 341–353. DOI : 10.1002 / qre.4680110505 .
  77. Перейти ↑ Patterson, D., Hennessy, J. (2009), 574.
  78. ^ "Приключение миграции RAID" . Проверено 10 марта 2010 .
  79. ^ Отказы дисков в реальном мире: что для вас означает наработка на отказ в 1000000 часов? Бьянка Шредер и Гарт А. Гибсон
  80. Харрис, Робин (27 февраля 2010 г.). «RAID 6 перестанет работать в 2019 году?» . StorageMojo.com . TechnoQWAN . Проверено 17 декабря 2013 .
  81. ^ JL Хафнер, В. Dheenadhayalan, К. Рао и JA Томлин. "Матричные методы восстановления потерянных данных в кодах стирания. Конференция USENIX по файловым технологиям и технологиям хранения , 13–16 декабря 2005 г."
  82. ^ Миллер, Скотт Алан (2016-01-05). «Понимание производительности RAID на различных уровнях» . Зона восстановления . StorageCraft . Проверено 22 июля 2016 .
  83. Art S. Kagel (2 марта 2011 г.). «RAID 5 против RAID 10 (или даже RAID 3 или RAID 4)» . miracleas.com . Архивировано из оригинала 3 ноября 2014 года . Проверено 30 октября 2014 года .
  84. ^ М. Бейкер, М. Шах, DSH Розенталь, М. Руссопулос, П. Маниатис, Т. Джули и П. Бунгале. «Новый взгляд на надежность долгосрочного цифрового хранения». EuroSys2006, апрель 2006 г.
  85. ^ "LN Bairavasundaram, GR Goodson, S. Pasupathy, J.Schindler." Анализ скрытых ошибок секторов в дисковых накопителях ". Труды SIGMETRICS'07, 12–16 июня 2007 г." (PDF) .
  86. Перейти ↑ Patterson, D., Hennessy, J. (2009). Компьютерная организация и дизайн . Нью-Йорк: Издательство Морган Кауфманн. pp 604–605.
  87. ^ a b c Левенталь, Адам (01.12.2009). «RAID с тройной четностью и выше. ACM Queue, Ассоциация вычислительной техники» . Проверено 30 ноября 2012 .
  88. ^ " " Отверстие для записи "в RAID5, RAID6, RAID1 и других массивах" . Команда ZAR . Проверено 15 февраля 2012 года .
  89. ^ «ОБЪЯВЛЕНИЕ: mdadm 3.4 - Инструмент для управления md Soft RAID под Linux [LWN.net]» . lwn.net .
  90. ^ "Журнал для MD / RAID5 [LWN.net]" . lwn.net .
  91. ^ Джим Грей: Понятие сделки: Добродетели и ограничение архивация 2008-06-11 в Wayback Machine (Специальный документ) VLDB 1981 : 144-154
  92. ^ «Определение кэша обратной записи в словаре SNIA» . www.snia.org .

Внешние ссылки [ править ]

  • «Эмпирические измерения частоты отказов дисков и ошибок» , Джим Грей и Кэтрин ван Инген, декабрь 2005 г.
  • Математика RAID-6 , Х. Питер Анвин
  • Предлагает ли поддельный RAID какое-либо преимущество перед программным RAID? - Обсуждение на superuser.com
  • Сравнение методов реализации RAID - Dell.com
  • BAARF: Battle Against Any Raid Five (RAID 3, 4 и 5 против RAID 10)
  • Чистка дисков с чистого листа