12

Я хочу сравнить надежность различных RAID-систем с накопителями (URE/bit = 1e-14) или корпоративными (URE/bit = 1e-15). Формула для определения вероятности успеха восстановления (без учета механических проблем, которые я буду принимать во внимание позже) проста:

error_probability = 1 - (1-per_bit_error_rate)^ bit_read

Важно помнить, что это вероятность получить по крайней мере один URE, а не только один.

Предположим, мы хотим использовать 6 ТБ свободного места. Мы можем получить это с:

  • RAID1 с 1+1 дисками по 6 ТБ каждый. Во время восстановления мы читаем 1 диск по 6 ТБ, и риск составляет: 1-(1-1e-14) ^(6e12 * 8) = 38% для потребителя или 4,7% для корпоративных накопителей.

  • RAID10 с 2+2 дисками по 3 ТБ каждый. Во время восстановления мы читаем только 1 диск объемом 3 ТБ (тот, который связан с неисправным!) и риск ниже: 1-(1-1e-14) ^(3e12 * 8) = 21% для потребителя или 2,4% для корпоративных накопителей.

  • RAID5/RAID Z1 с 2+1 дисками по 3 ТБ каждый. Во время восстановления мы читаем 2 диска по 3 ТБ каждый, и риск составляет: 1-(1-1e-14) ^(2 * 3e12 * 8) = 38% для потребительских или 4,7% или корпоративных дисков.

  • RAID5/RAID Z1 с 3+1 дисками по 2 ТБ каждый (часто используется пользователями продуктов SOHO, таких как Synologys). Во время восстановления мы читаем 3 диска по 2 ТБ каждый, и риск составляет: 1-(1-1e-14) ^(3 * 2e12 * 8) = 38% для потребительских или 4,7% или корпоративных дисков.

Вычислить погрешность для допуска на один диск легко, сложнее рассчитать вероятность для систем, допускающих отказы нескольких дисков (RAID6/Z2, RAIDZ3).

Если для восстановления используется только первый диск, а второй считывается снова с начала в случае или URE, то вероятность ошибки равна той, которая рассчитана с квадратным корнем (14,5% для потребителя RAID5 2+1, 4,5% для потребителя RAID1 1+2). Тем не менее, я полагаю (по крайней мере, в ZFS, которая имеет полные контрольные суммы!) что второй диск четности / доступный диск доступен только для чтения там, где это необходимо, а это означает, что требуется всего несколько секторов: сколько URE может произойти на первом диске? не так много, в противном случае вероятность ошибки для систем с допуском одного диска взлетела бы даже больше, чем я рассчитывал

Если я прав, второй диск четности практически снизит риск до крайне низких значений.

Помимо этого, важно иметь в виду, что производители увеличивают вероятность URE для накопителей потребительского класса по маркетинговым причинам (продают больше накопителей корпоративного класса), поэтому ожидается, что даже жесткие диски потребительского класса достигнут 1E-15 URE/ бит считывания ,

Некоторые данные: http://www.high-rely.com/hr_66/blog/why-raid-5-stops-working-in-2009-not/

Поэтому значения, которые я указал в скобках (диски предприятия), реально применимы и к дискам потребителя. А у реальных корпоративных накопителей надежность еще выше (URE/ бит = 1e-16).

Что касается вероятности механических сбоев, они пропорциональны количеству дисков и пропорционально времени, необходимому для восстановления.

2 ответа2

2

Есть ряд сайтов и статей, которые пытаются решить этот вопрос.

На этом сайте есть калькуляторы для уровней RAID 0, 5, 10/50/60.

В статье в Википедии об уровнях RAID есть разделы по частоте отказов RAID 0 и RAID 1.

RAID 0:

Надежность данного набора RAID 0 равна средней надежности каждого диска, деленной на количество дисков в наборе:

То есть надежность (измеряемая средним временем до отказа (MTTF) или средним временем между отказами (MTBF)) примерно обратно пропорциональна количеству элементов - поэтому набор из двух дисков примерно вдвое менее надежен, чем один диск. Если существует вероятность 5%, что диск выйдет из строя в течение трех лет, в двухдисковом массиве эта вероятность будет увеличена до {P} (по крайней мере, один отказ) = 1 - {P} (ни один отказ) = 1 - (1 - 0,05) ^ 2 = 0,0975 = 9,75%.

RAID 1:

В качестве упрощенного примера рассмотрим RAID 1 с двумя идентичными моделями дисковода, каждая из которых с 5% вероятностью выхода из строя диска в течение трех лет. При условии, что сбои являются статистически независимыми, вероятность отказа обоих дисков в течение трехлетнего срока службы составляет 0,25%. Таким образом, вероятность потери всех данных составляет 0,25% в течение трехлетнего периода, если с массивом ничего не сделано.



Также я нашел несколько статей в блоге на эту тему, включая эту, которая напоминает нам о том, что независимые диски в системе (I в RAID) могут быть не такими уж независимыми:

Наивная теория состоит в том, что если жесткий диск 1 имеет вероятность сбоя 1/1000, как и диск 2, то вероятность отказа обоих дисков составляет 1/1 000 000. Это предполагает, что сбои статистически независимы, но это не так. Вы не можете просто умножить такие вероятности, если ошибки не коррелированы. Неправильное предположение о независимости является распространенной ошибкой в применении вероятности, возможно, самой распространенной ошибкой.

Джоэл Спольски прокомментировал эту проблему в последнем подкасте StackOverflow. Когда компания создает RAID, она может собрать четыре или пять дисков, которые сходили с конвейера вместе. Если у одного из этих дисков есть небольшой недостаток, который приводит к его выходу из строя после, скажем, 10000 часов использования, вполне вероятно, что все они делают. Это не просто теоретическая возможность. Компании наблюдали, как партии дисков выходили из строя примерно в одно и то же время.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .