В последнее время я изучал RAID5 против RAID6 и продолжаю видеть, что RAID5 недостаточно защищен из-за рейтингов URE и увеличения размера дисков. В основном, большая часть контента, который я обнаружил, говорит, что в RAID5, если у вас сбой диска, если остальная часть вашего массива составляет 12 ТБ, то у вас есть почти 100% шанс встретиться с URE и потерять ваши данные.
Значение в 12 ТБ исходит из того факта, что диски рассчитаны на чтение 10 ^ 14 бит, чтобы достичь одного URE.
Ну, есть кое-что, чего я здесь не понимаю. Чтение выполняется главой, идущей в сектор, что может сделать чтение неудачным, либо умирает голова, либо сектор умирает. может также случиться так, что чтение не работает по какой-то другой причине (я не знаю, как вибрация заставила голову подпрыгнуть ...). Итак, позвольте мне рассмотреть все 3 ситуации:
- чтение не работает: это не неисправимо, верно? это можно попробовать снова.
- голова умирает: это наверняка будет невосстановимо, но это также означает, что полный диск (или, по крайней мере, сторона) будет нечитаемым, это будет более тревожным, нет?
- сектор умирает: также совершенно не подлежит восстановлению, но здесь я не понимаю, почему диск объемом 4 ТБ оценивается в 10 ^ 14 для URE, а 8 ТБ также оценивается в 10 ^ 14 для URE, что означало бы сектора на 8 ТБ (скорее всего, новые технологии) вдвое менее надежны, чем те, что на 4 ТБ, что не имеет смысла.
Как вы видите, из 3-х точек сбоя, которые я идентифицирую, ни один не имеет смысла. Так что же такое URE, я имею в виду конкретно?
Есть кто-то, кто может мне это объяснить?
Редактировать 1
После первой волны ответов, кажется, причина в том, что сектор терпит крах. Хорошо, что прошивка, RAID-контроллер и файловая система OS + имеют процедуру для раннего обнаружения этого и перераспределения секторов.
Что ж, теперь я знаю, что такое URE (на самом деле название само собой разумеется :)).
Я все еще озадачен основными причинами и в основном стабильным рейтингом, который они дают.
Некоторые связывают неисправный сектор с внешними источниками (космическими волнами), затем я удивляюсь, что тогда показатель URE основывается на показаниях чтения, а не на возрасте, космические волны действительно должны воздействовать на более старый диск просто потому, что он был выставлен более того, я думаю, что это скорее фантазия, хотя я могу ошибаться.
Теперь прибывает другая причина, которая связана с износом диска, и некоторые указали, что более высокие плотности дают более слабые магнитные домены, это полностью имеет смысл, и я следовал бы объяснению. Но, как хорошо объяснено здесь , более новые диски разных размеров получают в основном путем установки более или менее одного и того же диска (и затем одинаковой плотности) в корпус жесткого диска. Секторы одинаковы, и все должны иметь одинаковую надежность, поэтому большие диски должны иметь более высокий рейтинг, чем меньшие диски, при этом секторы читаются меньше, это не так. Почему? Это, тем не менее, объясняет, почему более новые диски с более новой технологией получают не лучший рейтинг, чем старые, просто потому, что более высокий технологический выигрыш компенсируется потерей из-за более высокой плотности.
Ответы:
URE - это неисправимая ошибка чтения. Произошло что-то, что привело к сбою чтения сектора, который диск не может исправить. Электроника привода сложна, они передадут данные только в том случае, если смогут правильно прочитать их с диска. Электроника привода несколько раз попытается прочитать неисправный сектор, прежде чем объявить его поврежденным.
Что вызывает ошибку чтения - я здесь не эксперт (размахивает рукой), но старение привода может привести к тому, что допуски на изготовление станут актуальными. Магнитные домены могут стать ослабленными. Космические лучи могут нанести ущерб и т. Д. По сути, это случайный сбой.
Как это влияет на RAID 5?
RAID 5 состоит из блочного уровня чередования с распределенной четностью. Блоки четности вычисляются путем объединения битов из блоков данных. Функция XOR в основном говорит, что, если все биты одинаковы, результат равен 0, в противном случае он равен 1. При вычислении четности вы берете первые 2 бита и XOR их, затем XOR результат со следующим битом и так далее, например
Природа функции XOR такова, что если какой-либо диск умирает и заменяется, данные, которые должны быть на нем, могут быть восстановлены с оставшихся дисков.
Как видите, поврежденные данные могут быть восстановлены путем XORing оставшихся данных и четности.
Как URE влияет на это?
URE имеет значение только во время перестройки RAID 5.
Когда вы воссоздаете RAID 5, необходимо выполнить большое количество операций чтения. Каждый блок данных должен быть прочитан, чтобы восстановить данные на новом диске. Если происходит URE, то данные для соответствующего блока не могут быть восстановлены, поэтому ваши данные противоречивы. Для достаточно больших дисков в достаточно большом R5 число считанных битов для восстановления замененного диска превышает значение URE, например, 1 бит при чтении 10 ^ 14.
источник
Жесткие диски не просто хранят данные, к которым вы их запрашиваете. Из-за постоянно уменьшающихся размеров магнитных доменов и того факта, что жесткие диски хранят данные в аналоговой, а не двоичной форме (микропрограмма жесткого диска получает аналоговый сигнал с диска, который преобразуется в двоичный сигнал, и этот перевод часть секретного соуса производителя), при чтении практически всегда есть некоторая ошибка, которая должна быть компенсирована.
Чтобы обеспечить возможность считывания данных, на жестком диске также хранятся данные прямого исправления ошибок и данные, которые вы просили их сохранить.
При нормальной работе данных FEC достаточно для исправления ошибок в сигнале, который считывается с диска. После прошивки можно восстановить исходные данные, и все хорошо. Это исправимая ошибка чтения, которая отображается в SMART как атрибут частоты ошибок чтения (атрибут SMART 0x01) и / или аппаратное восстановление ECC (атрибут SMART 0xc3).
Если по какой-то причине сигнал ухудшается ниже определенной точки, данных FEC уже недостаточно для восстановления исходных данных. На этом этапе, согласно теории, микропрограмма все еще сможет обнаружить, что данные не могут быть надежно прочитаны, но она ничего не может с этим поделать. Если несколько таких чтений завершаются неудачно, диск должен как-то сообщить остальной части компьютера, что чтение не может быть успешно выполнено. Это происходит путем сообщения о неисправимой ошибке чтения . Это также увеличивает счетчик Сообщаемых Некорректируемых Ошибок (атрибут SMART 0xbb).
Невосстановимая ошибка чтения или URE - это просто отчет о том, что по какой-либо причине данных полезной нагрузки плюс данные FEC оказалось недостаточно для восстановления первоначально сохраненных данных.
Имейте в виду, что ставки URE являются статистическими . Вы не столкнетесь с жестким диском, на котором вы сможете прочитать ровно 10 ^ 14 (или 10 ^ 15) - 1 бит, а затем следующий бит не удастся. Скорее, это заявление производителя, что в среднем , если вы прочитаете (скажем) 10 ^ 14 бит, то в какой-то момент в ходе этого процесса вы столкнетесь с одним нечитаемым сектором.
Кроме того, следуя последним нескольким словам выше, имейте в виду, что скорости URE даны в виде секторов на считанные биты . Из-за того, как данные хранятся на пластинах, диск не может сказать, какая часть сектора плохая, поэтому, если сектор не проходит проверку FEC, тогда весь сектор считается плохим.
источник
Спецификация обычно "в среднем 1 ошибка обнаружена при чтении n битов", поэтому размер диска не имеет значения. Имеет значение, если вы рассчитываете свой риск того, что на вашем диске и рабочей нагрузке произойдет ошибка, но производитель только заявляет, что для обнаружения ошибки требуется n считанных бит (в среднем, не гарантируется).
Пример: если вы покупаете диск емкостью 1 ТБ, вам придется прочитать его примерно 12 раз, чтобы найти ошибку, в то время как диск 8 ТБ может испытать его при втором чтении, но число прочитанных битов одинаково в обоих случаях, поэтому качество из магнитных шпинделей примерно то же самое.
За повышенную цену вы платите за другие факторы, способность втиснуть 8 ТБ в физическое пространство в 1 ТБ, значительное снижение энергопотребления, меньшее количество головных ударов при перемещении диска и т. Д.
источник
Я думаю, что @Michael Kjörling ответил четко.
Когда диск считывается, головка, определяющая направление магнитного домена, затем отправляет некоторый электронный сигнал, который является аналоговым. Мы предполагаем, что микропрограмма должна выдавать 1, когда она получает напряжение выше 0,5 В, но магнитное поле слишком слабое, поэтому головка посылает сигнал только с 0,499 В, возникла ошибка. Нам нужен FEC, чтобы исправить эту ошибку.
Вот пример: данные сектора должны быть 0x0F23, мы кодируем их с 0 * 1 + F * 2 + 2 * 3 + 3 * 4 = 0x30. теперь мы получаем FEC, и пишем это после сектора. Когда мы читаем, мы читаем 0x0E23 и FEC 0x30, это не совпадает. После некоторых вычислений мы нашли, что это должно быть 0x0F23. Но если мы получили 0x0E13 и 0x30, ИЛИ мы получили 0x0E23 и 0x32, мы не можем вычислить правильное значение.
Этот рейтинг настолько низок, возможно, если мануфактура hdd не будет читать данные PBs, когда данные EB не смогут получить стабильное значение. Таким образом, они выдают значение вероятности: когда вы читаете 10 ^ 14-битные данные, вы можете столкнуться один раз. Так как это значение вероятности, может быть, вы посчитали, что прочитали только 1 сектор данных, возможно, вы столкнулись, пока не прочитали данные объемом 50 ТБ. И это значение не имело ничего общего с емкостью диска, это просто случайная проблема с размером данных, который вы читаете. Если вы прочитали диск объемом 4 ТБ, заполненный данными 6 раз, этот шанс будет равен чтению диска 6 ТБ 4 раза или чтению диска 8 ТБ 3 раза.
источник