Формула для вычисления вероятности неустранимой ошибки чтения при перестроении RAID

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

error_probability = 1-(1-per_bit_error_rate)^bit_read

важно помнить, что это вероятность получения хотя бы одного Уре, не обязательно только один.

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

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

  • RAID10 с 2 + 2 дисками по 3 ТБ каждый. Во время перестроения мы читаем только 1 диск 3TB (в паре с неудачным!) и риск меньше: 1-(1-1е-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).

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

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

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

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

значения, которые я привел в скобках (корпоративные диски), поэтому реалистично применяются и к потребительским дискам. И реальные приводы предприятия имеют даже более высокая надежность (Уре / бит=1Э-16).

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

2 ответа:

Это самый лучший ответ, с теорией вероятностей тоже:

http://evadman.blogspot.com/2010/08/raid-array-failure-probabilities.html?showComment=1337533818123#c7465506102422346169

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

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

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

RAID 0:

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

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

рейд 1:

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



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

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

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