Почему RAID-5 — «mustdie»?



    В последнее время в мировой компьютерной прессе стало появляться довольно много статей на тему: «Почему RAID-5 это плохо» (пример раз, два, и другие)

    Постараюсь, без ныряния в инженерные и терминологические дебри объяснить, почему до сих пор RAID-5 вроде работал, а теперь вдруг перестал.



    Емкость жестких дисков за последние несколько лет растет без особых тенденций к остановке. Однако, хотя емкость дисков чуть ли не удваивается каждый год, прирост их быстродействия, то есть скорости передачи данных, за тот же срок увеличивается всего в проценты. Да, действительно, на дисках появляются интерфейсы SATA, SATA-II, и ждем уже SATA-III, но стали ли диски быстрее работать, а не просто получили новый интерфейс с бубенчиками и новыми круглыми цифрами теоретических показателей вида "цифра максимальной скорости на спидометре «Запорожца»?

    Практика говорит нам, что — нет.
    Если мы сравним быстродействие, в особенности на небольших случайных операциях, для массовых дисков SATA за несколько лет, то мы увидим, что заметного, сравнимого с ростами объемов, прироста производительности нет.
    Емкость — растет в разы, а скорость работы — нет.

    Когда RAID-5 появился, в 1987 году, типичный жесткий диск был размером 21MB, и имел скорость вращения 3600 RPM. Сегодня типичный диск SATA это 1TB, то есть прирост емкости составил 50 тысяч раз! Но скорость вращения при этом увеличилась всего вдвое.
    Если бы скорость передачи данных за эти годы росла бы такими же темпами что и емкость, то сегодняшние диски имели бы показатели передачи данных в районе 30 гигабайт в секунду.


    Теперь вспомним о том, что такое есть RAID, и его реализация — RAID-5.
    RAID, или Redundant Array of Independent Disks, это модель организации группы дисков в отказоустойчивую структуру таким образом, чтобы она сохранял доступность информации даже в случае повреждения или полного выхода из строя части из этих дисков.
    Среди множества описанных «в теории» типов RAID, в живой природе встречаются в основном три. Это RAID-0 (или «группа с чередованием» который «RAID» на самом деле только условно, так как отказоустойчивостью не обладает, о чем и говорит цифра 0), RAID-5, или «группа с чередованием и четностью», и RAID-1, или «зеркало». В чистом виде RAID-1 практически не используется из за ограничений по скорости, поэтому в высокопроизводительных массивах используется его комбинация с RAID-0. В результате этого альянса RAID-0 получает отказоустойчивость, а RAID-1 — быстродействие. Как правило, такая комбинация называется RAID-0+1 или RAID-10, или «чередование с зеркалированием».

    RAID-10 хорош многим. Да почти всем. И надежностью, и быстродействием, за исключением того, что на его создание уходит 50% всей емкости дисков, половина. Довольно таки «бандитский процент».
    Именно такой, довольно жестокий, процент часто заставляет пользователей серверов и систем хранения выбирать как альтернативу RAID-5.

    Действительно, в RAID-5 мы платим за отказоустойчивость емкостью всего одного диска, то есть емкость RAID-5 равна (n-1)*hddsize, где n — число дисков, а hddsize — их размер.
    Данные «размазаны» по всем входящим в RAID-группу дискам, их блоки дополнены служебной информацией, которая дает возможность восстановить потерю данных в размере любого одного диска, причем сама эта служебная информация не занимает какой-то выделенный диск, а просто часть объема этой группы, равную как раз емкость одного диска. Но она также размазана по всем дискам.

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

    Если вы еще не сталкивались с процессом ребилда RAID-5, вы, возможно, будете неприятно поражены тем, насколько длительным этот процесс может быть. Длительность эта зависит от многих факторов, и, кроме количества дисков в RAID-группе, и их заполненностью, что очевидно, в значительной степени зависит от мощности процессора RAID-контроллера и производительности диска на чтение/запись. А также от рабочей нагрузки на дисковый массив во время проведения ребилда, и от приоритета процесса ребилда по сравнению с приоритетом рабочей нагрузки.
    Если вам не посчастливилось потерять диск в разгар рабочего дня или рабочей недели, то процесс ребилда, и так небыстрый, может удлинниться в десятки раз.
    А с выходом все более и более емких дисков, уровни быстродействия которых, как мы помним, почти не растут, в сравнении с емкостью, время ребилда растет угрожающими темпами, ведь, как уже писалось выше, скорость считывания с дисков, от которой напрямую зависит скорость прохождения ребилда, растет гораздо медленнее, чем емкость дисков и объем, который нужно считать.

    Так, в интернете легко можно найти истории, когда сравнительно небольшой 4-6 дисковый RAID-5 из 500GB дисков восстанавливал данные на новый диск в течении суток, и более.


    Источник: Adaptec
    «a RAID 5 array with five 500 GB SATA drives took approximately 24 hours to rebuild»Источник:


    «The testing used a 3.5TB array composed of 16 250GB SATA disks configured as RAID 5… 3ware took… over a day to repair a RAID 5 array when under a file server workload.»Источник:


    «I'm now at 80% of rebuilding my RAID-5 array with 3x 1TB harddrives, I've calculated that the total time needed to rebuild the array will be 66 hours!»Источник:


    «On my filer I run a software raid 5 across eight 500 GB sata drives, which works great… Recovery time is about 20 hours. Athlon X2 4200+ and nvidia chipset.»Источник:


    С использованием же терабайтных и двухтерабайтных дисков приведенные цифры можно смело умножать в 2-4 раза!

    И вот тут начинаются страсти.
    Дело в том, и это надо себе трезво уяснить, что на время ребилда RAID-5 вы остаетесь не просто с RAID лишенным отказоустойчивости. Вы получаете на все время ребилда RAID-0, надежность и отказоустойчивость которого меньше надежности и отказоустойчивости одного диска в n раз, где n — это количество дисков в группе.
    (решил удалить откровенно спорные положения статьи :) С удовольствием приму помощь от компетентного математика-«вероятниста» в правильном вычислении показателей надежности, впрочем основного посыла в ненадежности RAID-0 это не изменяет)
    В случае любого отказа, даже самого маленького, даже, быть может, не отказа диска целиком, а просто сбоя чтения из за помехи, или проблем с кабелями, вы теряете всю на нем информацию.

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

    Вот что говорят о надежности дисков материалы самих вендоров.
    (Сводная таблица по основным сериям дисков)

    В настоящее время практически все производители выпускают жесткие диски двух основных классов.
    Это так называемые Desktop-диски, для настольных систем, и диски Enterprise, предназначенные для серверов и прочих критичных случаев. Кроме того, диски класса Enterprise также делятся на диски SATA (скорость оборотов 7200RPM) и SAS или FC (со скоростями вращения 10K и 15K RPM).

    Надежность процесса передачи данных принято измерять параметром BER — Bit Error Rate(Ratio). Это вероятность сбоя, из расчета некоего объема прочитанных головками диска бит.
    Как правило, диски Desktop-class имеют указанную производителем величину BER равную 10^14 степени, постепенно для все больших дисков, в особенности новых серий, указывают величины надежности в 10^15. Это число означает, что производитель прогнозирует вероятность сбоя при чтении не хуже, чем одного сбойного бита на 10^14 степени прочитанных диском бит. Единица с 14 нулями. Сто тысяч миллиардов бит.
    Цифра огромная, казалось бы. Но так ли велика она на самом деле?

    Несложная математика уровня calc.exe говорит нам, что 10^14 бит это всего лишь около 11TB данных. Это означает, что производитель жестких дисков говорит нам таким образом, что считав с диска с параметром BER 10^14, то есть обычного, десктопного класса диска, примерно 11TB, мы, с точки зрения производителя, наверняка получим где-нибудь сбойный бит. По крайней мере он, производитель, на это у себя рассчитывает.
    Сбойный бит чтения означает сбойный блок, размером 512 байт, на который он пришелся. И пошло-поехало.
    11 терабайт это же уже и не так много?

    И это не означает, что надо прочитать ровно 11TB, BER это только вероятность, которая стремится к 100% к 11-му терабайту. На меньших объемах она просто пропорционально уменьшается.
    Да, диски с BER равным 10^15 имеют вероятность ошибки в 10 раз лучше (110TB считанного на один сбойный бит), но и это только временное улучшение. Как мы помним, емкость дисков удваивается с каждым новым поколением, то есть примерно каждые полтора-два года, растут и емкости RAID, а BER10^15 для SATA достигнут только в последний год-полтора.

    Так, например, для 6-дискового RAID-5 с дисками 1TB величина отказа по причине BER оценивается в 4-5%, а для 4TB дисков она же будет достигать уже 16-20%.


    Источник: Hitachi Data Systems: Why growing business need RAID-6.
    Эта холодная цифра означает, что с 16-20-процентной вероятностью вы получите отказ диска во время ребилда (и, следовательно, потеряете все данные на RAID). Ведь для ребилда, как правило, RAID-контроллеру придется прочитать все диски, входящие в RAID-группу, для 6 дисков по 1TB объем прочитанного RAID-контроллером потока данных с дисков достигает 6TB, для 4TB он уже станет равным 24TB.
    24TB это, при BER 10^15, четверть от 110TB.

    Но даже и это еще не все.
    Как показывает практика, примерно 70-80% данных, хранимых на дисках, это так называемые cold data. Это файлы, доступ к которым сравнительно редок. С увеличением емкости дисков их объем в абсолютном исчислении также растет. Огромный объем данных лежит, зачастую, нетронутый никем, даже антивирусом (зачем ему проверять гигабайтные рипы и mp3?), месяцами, а возможно и годами.
    Ошибка данных, пришедшаяся на массив cold data обнаружится только лишь в процессе полного чтения содержимого диска, на процесс ребилда.
    Большие и «умные» системы хранения обычно постоянно занимаются в секунды простоя так называемым disk scrubbing-ом, постоянно считывая и контролируя характеристики чтения для всего объема дисков. Но уверен, что ваш недорогой «домашний» RAID-контроллер этого не делает.
    Следовательно, вы узнаете о появившемся неделю назад bad block где-то в пространстве cold data в тот момент, когда скрестив пальцы будете с замиранием следить за прогресс-баром процесса ребилда.

    Вот какая неприятная правда скрывается за несколько скандальными статьями о «смерти RAID-5».
    Возможно, что для архива порнухи домашней видеоколлекции потеря ее в считанные секунды и не будет такой уж большой катастрофой, особенно если вы хорошо владеете собой. Но уж точно пришла пора отказаться от RAID-5 на чуть более критичных задачах, чем «домашнее хранилище BD-рипов накачаных из торрента».

    Выводы (для тех, кто ниасилил):
    1. Резкий рост объемов дисков, при гораздо более медленном приросте скоростей передачи данных с диска привел к тому, что время восстановления RAID-5 катастрофически удлиннилось и продолжает расти с выходом все более емких дисков. Как следствие, неприемлимо увеличивается период времени, когда данные остаются полностью незащищеными.
    2. Отсутствие средств контроля областей cold data (редко обновляемых и считываемых данных) в недорогих контроллерах RAID-5 может привести к обнаружению давно возникшей проблемы считывания в критический момент ребилда RAID, когда он полностью незащищен от сбоев, и приведет в полной потере данных.
    3. Повышенная нагрузка на диски в период восстановления потенциально еще повышает вероятность сбоя.
    4. Современные диски Desktop-class уже приблизились по объемам к показателям определяемого их изготовителями параметра BER (Bit Error Rate), что еще более повышает вероятность сбоя в ходе массированного считывания всего объема диска.

    Все перечисленное доказывает необходимость отказа от использования RAID-5 в качестве отказоустойчивого решения для хранения важных и критичных данных.

    Решение:
    1. Для данных, скорость доступа (и в особенности записи) к которым не так важна — RAID-6. Тип RAID устойчивый к сбою двух дисков. При выходе из строя одного диска, защищающий на время ребилда, от случайных ошибок чтения при восстановлении. Недостаток — относительно невысокая скорость на запись.
    2. Для данных, к которым требуется максимально быстрый доступ как на запись, так и на чтение — RAID-10. При использовании RAID-10 время ребилда резко сокращается, так как не требуется чтения полного объема RAID, а только копирование содержимого «зеркального» к вышедшему из строя диска. Недостатки — большой расход дисков на обеспечение отказоустойчивости.
    3. По возможности не экономить, используя для хранения критичной информации не предназначенные для работе в RAID диски Desktop-class, а использовать специальные серверные Enterprise-серии, надежность чтения которых на один-два порядка выше.

    Поделиться публикацией
    Похожие публикации
    Никаких подозрительных скриптов, только релевантные баннеры. Не релевантные? Пиши на: adv@tmtm.ru с темой «Полундра»

    Зачем оно вам?
    Реклама
    Комментарии 222
    • +10
      Спасибо! Отличная статья.
      Ясно, подробно, со ссылками.
      • +15
        У RAID-10 есть одна маааленькая проблема, его нельзя увеличить в размере докинув 1-2 веника :-)

        Если рейд через mdadm — то скоростью ребилда можно управлять, и мой 2Тб Raid-5 массив перестраивается за 2.5 часа.
        BER — указывается производителями для чтения секторов, а не бит.

        Ну и конечно, RAID-6 рулит, через 0.5-1 год когда буду расширять массив, будет 4Тб Raid-6.

        О bad-блоке в cold-данных во время ребилда узнавать не приходится, во всех современных вениках есть offline surface scan, и блок reallocated даже если вы его не читаете как только на нем будет увеличение ошибок чтения, без потери данных.
        • 0
          Да и RAID-5 тоже не вот прямо легко добить дисками! :)

          Про «enlarge your raid»: В последних ядра (с 2.6.28 по 2.6.31) в линуксе починили древнее позорище — теперь при использовании LVM есть честные barriers, которые доходят до железа. То есть, использование LVM стало осмысленным, а не просто, потому, что это модно, или «как у взрослых». То есть, если смотреть на софтверный RAID-10, то можно сделать кучку из RAID-1, которые слеплены в единое пространство через LVM. Плюс LVM дает огромную гибкость в управлении разделами, и самое приятное — snapshots, возможность сохранять и бекапить точный образ раздела на какой-то момент времени.

          Я попробовал… и подсел :) Реализовал у себя на сервере такую стему (RAID-1 * X + LVM).
          • 0
            через LVM можно сделать и зеркалирование.
            • 0
              Вроде, LVM плохо зеркалирует (не производит балансировку нагрузки по дискам).
              • 0
                • 0
                  Ну я сам проверял где-то с пол года назад, не работало.

                  Вот ссылка на наблюдения других людей:

                  osdir.com/ml/linux-lvm/2009-03/msg00010.html

                  > Hello mailing list,
                  >
                  > I currently sensed that LVM2 is not load balancing reads of mirrored
                  > LV's form their corresponding PV.

                  Yes, it just reads from the default_mirror (i.e. primary mirror leg).
                  There is a read-balancing patch. It is not upstream yet and most likely
                  not there in your kernel either.


                  Может за пол года что-то и поменялось, а может и нет…
                  linux md при этом работает как положено.
      • +24
        RAID — это инструмент и как всякий инструмент его надо уметь использовать. Например, под файлопомойки — RAID5 самое оно.
        А что до ребилда — то обязательно надо иметь HotSpore диск, на который пойдет автоматический ребилд.

        И последнее — RAID бекапов не отменяет. Никакой. Бекапы надо делать всегда и хранить в темном недоступном месте, защищенном от юзверей.
        • +5
          всёже Hot Spare
          • +14
            Hot Spare это только средство сократить до нуля интервал между выходом из строя диска с данными и началом ребилда.
            В противном случае ребилд начнется только тогда когда вы руками замените диск в RAID на новый, то может наступить, например утром рабочего дня, или когда такой диск завезут на склад вашего поставщика
            Сам ребилд как таковой, HotSpare диск не отменяет и не сокращает.
            • 0
              По закону бутерброда поломка следующего диска как раз происходит тогда, когда новый диск везут со склада. Так что must have.
              • 0
                Это безусловно. Просто не раз сталкивался со странным представлением, что наличие в системе hotspare якобы решает проблему долгого ребилда. Нет, не решает.
          • –9
            странная статья, не понятно для кого
            в организации где это важно ставят нормальные рейд контролеры, и проблемы типа:
            Большие и «умные» системы хранения обычно постоянно занимаются в секунды простоя так называемым disk scrubbing-ом, постоянно считывая и контролируя характеристики чтения для всего объема дисков. Но уверен, что ваш недорогой «домашний» RAID-контроллер этого не делает.

            нет

            для домашнего контролера, выпадение одного харда и последующий ребилд тоже не проблема, так как дома уж ради такого можно на денек отказаться от просмотра парнушки и отключить торренты… ;)

            Нужно все таки наверно корректно сравнивать рейды разных уровней, так как время ребилда raid10, скажем тоже не равно нулю, а при ошибки в этот момент опасность потери всех данных даже больше чем при ребилде raid5 (если в пятом рейде больше 3 хардов), а производительность raid6 вызывает некоторые сомнения ;)

            Скажем так ред5 как был так и остается золотой серединой между рейд10 и рейд6, он надежнее, но менее производителен чем рейд10 + больший полезный объем, производительнее но менее надежен чем рейд6…

            Для организаций однозначный выбор сделать сложно, в разных случаях выбор будет на разные рейды, но мое имхо лучше RAID5 для домашнего наса врятли что то есть…

            • +5
              Далеко не все RAID-контроллеры делают скраббинг. Я, к сожалению, не спец по серверным RAID, я по «железным» девайсам спец. Но в статье стремился в эмпиреи железок, которые подавляющее большинство читателей хабра не увидят, не лезть. :)
              «Железки» — умеют чекать пространство, они все свободное время этим занимаются, а вот насчет внутренних серверных контроллеров — не уверен.

              > для домашнего контролера, выпадение одного харда и последующий ребилд тоже не проблема

              Вы невнимательны. Основной посыл статьи как раз в том, что именно «выпадение одного харда и последующий ребилд» для RAID-5 это настоящая проблема, так как вероятность вторичного сбоя при этом возрастает многократно, прежде всего из за конечной надежности чтения массовых винтов (см абзац про BER и его величины).

              > так как время ребилда raid10, скажем тоже не равно нулю,

              Не равно, но в сотни раз быстрее ребилда RAID-5, так как ребилд RAID-10 происходит со скоростью примерно 100MB/s, скоростью линейного последовательного чтения диска.
              И для этого не нужно читать _весь_ массив дисков, как в случае RAID-5.
              • –1
                про сотни раз вы сильно при увеличиваете ;) ребилд рейд5 происходит не со сокростью 1мб/c ;)
                • +2
                  Вы не учитываете объём данных, которые надо прочитать.
                • 0
                  Не знаю как вы, а я перестраиваю RAID-5 на 100Мб/сек :-)
                • +2
                  Боюсь вы малость ошибаетесь.
                  При ребилде зеркала идет копирование данных с 1 диска, а при ребилде 5-го рейда — со всех дисков в массиве. Для считывания 1-4TB указанные BER дают сравнительно небольшую вероятность потери данных.

                  А для домашнего NAS никто не мешает использовать JBOD. Во всяком случае мат. ожидание потери данных для 4x2TB дисков у него меньше :)
                  • +1
                    не совсем понял вашу мысль, то есть, мат ожидания потери каких либо данных, на 4х2TB дисков на jbod меньше чем на raid5?
                    • 0
                      Да, как как в случае JBOD диски не связаны между собой.
                      • +2
                        гм… не, ну мне считать влом, но вот так на пальцах
                        при jbod выпадение диска, это уже потеря данных 100% безоговорочно
                        при raid5 выше вероятность выпадения диска так как они активнее нагружаются, но вероятность и выпадения диска и краша всего рейда, гм по моему ниже…
                    • НЛО прилетело и опубликовало эту надпись здесь
                      • –2
                        > Даже если при чтении поймали ошибку, то она детектируется и производится повторное чтение и её уже нет.

                        Вот только как к этой самодеятельности диска отнесется RAID-контроллер?
                        Я вам скажу — плохо отнесется. Именно поэтому и существуют специальные серии дисков для RAID, отличающиеся от десктопных отключенной «самодеятельностью».
                        • НЛО прилетело и опубликовало эту надпись здесь
                    • +1
                      Насколько я понял из статьи автора, проблема только косвенно стоит во времени ребилда. А так проблема комплексная и шансы в 22% потерять данные при ребилде не очень воодушевляют.
                    • +11
                      Я в данной области более теоретик, если кто поправит, буду рад:
                      1. мелочь, а все-таки — RAID-1 позволяет читать данные в 2 раза быстрее за счет распараллеливания между зеркалами;
                      2. Скорость вращения != скорость чтения данных. Не совсем корректно указывать, мол, объем вырос в стопицот раз, а скорость вращения только вдвое, так как некоторые поторопятся и подумают, что скорость чтения/записи выросла всего вдвое. Сравнивать лучше скорость чтения/записи (которая пропорциональна скорости вращения и плотности размещения данных), которая выросла как бы больше, чем в 2 раза (не в последнюю очередь за счет кэша и оптимизации операций чтения в самой железке) =)
                      3. Ребилд (равно как и чтение/запись) в старших рейдах являются тривиальной операций на основе xor, т.е. они будут медленными для софтовой реализации, а в случае нормальной железки она вроде как очень скоростная.

                      Вообще, статья очень хорошая. Над некоторыми вещами не задумывался ранее (в том числе недоумевал над популярностью raid10), так что спасибо за культурпросвет.
                      • +1
                        1. Да, но иногда жалко терять половину пространства
                        2. Теоретически большая скорость вращения позволяет более быстро получить доступ к области диска. Отсюда, какой-то прирост скорости чтения есть (цифрами не владею, не буду вводить в заблуждение)
                        3. Не на всех контроллерах она скоростная. Кроме прочего, во время ребилда производительность дисковой подсистемы сильно снижается. По крайне мере, на HP NetRaid это очень сильно было заметно (не пинайте, сам знаю, что железка старая)
                        • 0
                          1. Да, но иногда жалко терять половину пространства
                          Тут как раз и приходится решать для себя что важно — объем информации или её ценность.
                          • +2
                            Согласен. Потому и нет универсальных решений — в каждом конкретном случае нужно выбирать свои средства.
                        • 0
                          1. Да, но только в два раза. А RAID-10 из, например, 8 дисков — в 8 раз, и эта величина пропорционально увеличивается при добавлении дисков.

                          2. Там в статье приведена ссылка на iXBT-шное тестирование дисков разных лет, самый старый из которых — 160GB Samsung Spinpoint 2004 года, в сравнении с новым сигетовским терабайтником. Посмотрите, очень показательно.

                          3. Нет :) Все не так просто как вам кажется.
                          Я же привел график и ссылку на PDF адаптека по времени ребилда. Не ленитесь проверять, если не верите на слово.;)
                          • 0
                            1. Если зеркалировать 8 дисков под RAID-1, то тоже получится прирост в 8 раз на чтение :D
                            2. ненене, 160Гб и 1Тб в данном контексте сравнивать как бы некорректно. Давайте искать данные по тому самому, на 21Мб =)
                            3. я верю — просто сомневаюсь. Касательно графиков от известных фирм-производителей (даже тех, которые люблю и уважаю) — я им редко доверяю, так как любое испытание содержит тыщщи допущений и тонкостей, которые могут все с ног на голову перевернуть, ибо маркетинг.
                            • 0
                              1. Нет :) Без чередования ускорения не будет. А с чередованием это и будет RAID-10.

                              2. Я привел сравнение. Скорость диска на 21 MB была примерно 600KB/s
                              При увеличении в 50 тысяч раз, пропорционально увеличению емкости, это было бы 30GB/s

                              3. Ответ 3ware на измерения Adaptec. У них свой получился лучше, но все равно 10 часов
                              3ware.com/products/pdf/3ware_Adaptec_SPEEDComp_9650SE-vs-31605_121107c.pdf
                              • 0
                                1) гм… по моему многие рейды умеют работать с зеркалом на чтение с нескольких хардов… то есть по сути при записи у вас обычный рейд1, при чтении рейд0
                                • 0
                                  1. зависит от объема данных. Для небольших (несколько блоков) — не будет. Для больших (много блоков, возможно — в разных местах диска) — за счет распараллеливания запросов можно ускорить.
                                  • 0
                                    У нас RAID5 из сейчас уже 15 дисков Seagate SATA по 500Gb как раз на таком контроллере. Могу сказать, что добавление диска влечёт за собой перестройку массива сроком до 5 суток.
                            • +2
                              Был случай, станция видеомонтажа, но люди денег на нее тратить не хотели, мать была асус не шипко хорошая, с рейд-контроллером на борту. В один самый не подходящий день один диск умер. Поставили свежий, а рейд данные не копирует. Настроек и команд никаких нет. Уже и кабель проверил и питание. Новый диск он так и не принял, после сотой попытки заработал умерший винт, данные удалось утянуть. Такой не дорогой рейд-контроллер.
                              • +3
                                Обычно в биосе RAID надо явно указать для этого диска что он hotspare, после этого RAID его понимает и начинает его использовать для ребилда. Просто неназначнный и присутствующий как нераспределенный в RAID MAanager диск обычно не берется (мало ли что, вдруг он используется как-то иначе, лучге не трогать).
                              • 0
                                Хорошая статья — аргументированно и по делу :)

                                Разве что не хватает экзотических вариантов RAID-5EE и ему подобных
                                • 0
                                  Да я то же хотел как раз спросить на тему Raid5E и Raid5EE, еще если честно не хватает Raid6E :)
                                  А еще есть raid50/60 :)
                                  • 0
                                    Насколько я помню, это все какие-то проперитарные реализации в серверных контроллерах IBM, не?

                                    Не, я конечно могу вообще пост про все RAID по порядку написать.
                                    Но пока сошлюсь на вот это:

                                    blog.aboutnetapp.ru/archives/22
                                    blog.aboutnetapp.ru/archives/24
                                    • 0
                                      не знаю насколько оно там по лицензии реализовано, но в адаптеках есть.
                                • 0
                                  Проблема увеличения скорости жестких дисков лежит в их архитектуре.
                                  Ждем и надеемся на быстрое развитие SSD-дисков. Вот там поле еще не перепахано.
                                  • НЛО прилетело и опубликовало эту надпись здесь
                                    • +1
                                      не приводит один кластер к потере ВСЕХ данных… максимум к более геморройному ребилду… минимум так же к испорченному файлу…
                                      • НЛО прилетело и опубликовало эту надпись здесь
                                        • 0
                                          В невнимательности ishua ;)
                                          • 0
                                            преувеличение автором… ;) на практике была ситуация ребилд нормально проходил, когда в процессе ребилда два раза свет выключали, то есть сервер тупа отрубался от розетки… При этом массив был заполнен на 90% и серверу уже было лет 6 ( собственно за все 6 лет упсу не меняли по этому сервер то и отрубался при отключении света) :)
                                            • НЛО прилетело и опубликовало эту надпись здесь
                                        • +2
                                          1. Использовать RAID-6. В случае RAID-6 в случае отказа одного диска у вас все равно остается защита избыточностью на время ребилда.
                                          2. Использовать RAID-10. На нем ребилд происходит гораздо быстрее (простым линейным копированием с одного диска на другой).

                                          ЗЫ. Чувствую, что ниасилившие ниасилили даже вывод :)
                                          • –4
                                            RAID10 не более надёжен, чем RAID5.
                                            • 0
                                              Это не так.
                                              • –3
                                                RAID-10 с вероятностью 50% дохнет от потери 2-х винтов, в случае RAID-5 вероятность 100% :-)
                                                В принципе, это утешает :-)
                                                • –1
                                                  Опять же, какова вероятность сдохнуть 2-ум винтам за время восстановления RAID?
                                                  • +1
                                                    Она есть. Это главное. Потому я лично предпочитаю RAID-6 :-)
                                                    • –1
                                                      Вероятность сообщает одну цифру, а закон подлости — другую :)
                                                      • +4
                                                        С таким подходом нужно не RAID пользоваться, в иконы по стенам вешать и святой водой запасаться.
                                                        • 0
                                                          диски имеют определенный ресурс жизни => винты одинаковые, их ресурс тоже => падения одного винта признак того, что второй винт тоже скоро откажет(если проблема в ресурсе, а не в проблеме с питанием например). в то время как raid0 за очень быстрые сроки позволяет создать 100% копию массива но свежем диске, и поломка второго диска уже не так страшка.
                                                          • 0
                                                            Автомобили имеют определённый ресурс жизни=>автомобили одинаковые=>если соседское авто поломалось, то моё тоже пора везти на свалку.
                                                            Странна логика. Винт может прожить 15 лет, а может умереть через минуту после установки. Они вообще мрут волнами — сначала сразу после установки, затем в течении года, а затем уже сугубо от старости.
                                                            • 0
                                                              не правильно рассуждаете, вы ездите с сосед практически синхронно? одинаковый пробег в одно и тоже время по тем же дорогам? винты в raid'e используются одинаково и тратят они свой ресурс практически синхронно.

                                                              p.s.
                                                              у моих соседей одинаковые hond'ы CRV, оба с разницей в неделю поменяли тормозные колодки, копили они приблизительно в одно и тоже время :)
                                                      • +1
                                                        У нас в Латвии был показательный случай у редакции нашего местого IT журнала Digital Times, когда у них на сервере сдох RAID-5 сразу в 2 диска. В итоге они всё подымали из бекапов, т.к. у них ещё был простой HTML хостинг, на котором очень даже много сайтов. Вроде бы сервер, вроде аппаратный райд, вроде SCSI диски — а всё равно сдохло сразу и намертво.
                                                        • 0
                                                          У меня был случай, случай, когда сдохло три накопителя подряд от разных производителей в разный системных блока.
                                                          Сдох винт. Взял замену (новую!) — вставил. При восстановлении замена приказала долго жить. Вытащил винт вставил в другую систему, взял ещё замену (тоже новую другого производителя). Сдохла сразу после восстановления. Отдал другому человеку, он поставил третью замену и всё заработало.
                                                          В таких случаях — камлания, иконы, святая вода и резервные копии.
                                                          • 0
                                                            Может у вас с электропитанием проблемы? Например, очень грязное и нестабильное.
                                                            • 0
                                                              Ну, во-первых, разные системы. Во-вторых электропитание там гарантированного качества :)
                                                              Нет, это просто везение. Когда-нибудь такое должно было произойти :)
                                                        • 0
                                                          Очень таки немалая… Имею печальный опыт сдыхания RAID10, с которого после плясок с бубном удалось вытащить конфиги.
                                                      • 0
                                                        Посчитайте вероятность.
                                                        Можете просто прикинуть из соображений здравого смысла какая вероятность больше — отказа одного диска из 4-х или одного диска из 3-х?
                                                      • +1
                                                        RAID5 гарантированно умирает при одновременной потере двух дисков. RAID10 может не умереть, если один потеряный диск не является зеркалом другого.
                                                        • –4
                                                          После потери одного диска у RAID10 остаётся три диска, а у RAID5 — два. Где вероятность отказа больше?
                                                          • 0
                                                            Raid10 = (A, B) (C, D)
                                                            Raid5 = (Z, X, C)

                                                            Сдох диск C.

                                                            Вероятность отказа одного из трех дисков в Raid 10 больше, но какова при этом вероятность потерять данные? ,-)
                                                            • 0
                                                              Вероятность потерять данные больше в RAID5, т.к. потеряв любой диск из оставшихся двух потеряешь данные. А в RAID10 из оставшихся 3-х дисков ты можешь потерять еще один диск (любой из двух который не зеркало вылетевшего)
                                                              • –6
                                                                Не правда ваша. В Raid0+1 у вас осталось три диска из них два — хранят одинаковые данные. Какова вероятность потерять весь массив? Вероятность выше чем в RAID5, т.к. потеря диска с уникальными данными однозначно приводит к потере массива. Плюс, вероятность потери дублирующихся данных.
                                                                Это я к тому, что нельзя вот так однозначно утверждать :)
                                                    • 0
                                                      спасибо, определился с выбором для себя
                                                      • 0
                                                        Что-то как-то весьма хрень.
                                                        Массив RAID1 объёмом 1TB тоже будет восстанавливаться часов 5-10. Это раза в четыре меньше чем RAID5. Если же применяется «честный» контроллер RAID5 с восстановлением «на лету», то он по производительности практически не будет отличаться от RAID1. Более того, он ещё и имеет все шансы обогнать RAID1. Да, он денег стоит. Но тут уж или восстанавливаться двое суток или денежку платить.
                                                        По надёжности тоже как-то не понятно. Честный RAID5 быстрее чем один диск на линейный операциях при более высокой надёжности. RAID1 — надёжнее, но медленнее чем RAID5. RAID0 — быстрее но намного менее надёжен, чем RAID5. RAID10 — быстрее, но всё ещё менее надёжен, чем RAID5. Отсюда получаем, что RAID5 — хороший компромис между надёжности и быстродействием. А рассказы о том, что на время восстановления он, о ужас! теряет в надёжности можно отнести к любому RAID с небольшим количеством дисков. И почему-то не рассматривается вариант RAID5+1, который даёт полное счастье. Однако, есть мнение, что в большинстве случаем более оптимальным будет хранение бэкапов на отдельном массиве.
                                                        Короче говоря, а какой смысл-то? Всем сидеть на RAID10 и пожертвовать надёжностью?
                                                        • –1
                                                          Откуда у вас такие цифры? Я 2Тб Raid-5 перестраиваю за 2.5-3 часа.
                                                          • –1
                                                            С потолка :) я тоже перестраиваю 2 часа, но вот автор топика рассказывает об огромных сутках. Поэтому я говорю о крайних случаях, когда у вас программный RAID5, слабый процессор и кривой софт :)
                                                            • 0
                                                              Специально на новом сервере попробовал собрать 5й раид из 4х 150гб дисков, порушил его — восстанавливалось все минут 20-25. Контроллер аппаратный.
                                                              • 0
                                                                Для пустых винтов, да еще и 150GB это нормально. Вы возьмите терабайтники. И побольше. И заполните их, вот все и увидите.
                                                                • 0
                                                                  Они не пустые были — забил под завязку iso-шниками :)
                                                          • +5
                                                            Вы получаете на все время ребилда RAID-0, надежность и отказоустойчивость которого меньше надежности и отказоустойчивости одного диска в n раз, где n — это количество дисков в группе.

                                                            Это, мягко говоря, не верно.

                                                            Про это уже как-то писалось: Парадокс надежности RAID-0

                                                            Интуитивно кажется, что если существенно выросла вероятность потерять данные, то вероятность выживания данных так же существенно уменьшится, но на самом деле это не так! Из-за того, что вероятность потери данных достаточно мала, противоположная вероятность выживания данных изменится слабо.
                                                            • –7
                                                              Не согласен автором. Какие-то мудрствования.

                                                              У нас есть 1 диск. Есть некая вероятность отказа в произвольный момент Т.
                                                              За некоторый период времени N он может отказать один раз.

                                                              Теперь у нас есть 8 дисков, у каждого из них вероятность отказа также в момент Т.
                                                              За тот же момент времени в этой группе может произойти 8 отказов, в каждом из дисков.
                                                              Следовательно в RAID-0 едином целом, состоящем из 8 дисков надежность ниже в 8 раз.
                                                              Это если на пальцах, еще не забывшие тервер поправят меня, но вряд ли сильно.
                                                              • +4
                                                                Повторите теорию вероятности, пожалуйста.
                                                                Купите учебник, на досуге почитайте…
                                                                • –4
                                                                  Мне не за это платят. :)

                                                                  А если серьезно, то раз вы сециалист — то и расскажите, чтобы неспециалисту стало понятно, в чем я не прав с RAID-0.
                                                                  • +3
                                                                    Если надежность одного диска 0,99, то надежность массива raid0 из 8 будет 0,92.

                                                                    И она упала вовсе не в восемь раз, а в 1,07 раза (на 7 процентов).
                                                                    • –2
                                                                      Почему?
                                                                      • +1
                                                                        Что почему?
                                                                        • –5
                                                                          Ну я попросил вас объяснить, чтобы неспециалисту, то есть мне, стало понятно. А вы встали на броневик и произнесли какую-то загадочную фразу.
                                                                          Откуда она у вас взялась я не понимаю, моим ощущениям она противоречит.
                                                                          Не убедили. Попробуйте все же.
                                                                          Я серьезно.
                                                                          • 0
                                                                            Я тоже серьезно, что пояснить?

                                                                            Формулу «надежность = p^n», где p — надежность (вероятность выживания) одного диска, а n — число дисков в массиве raid0?
                                                                            • –6
                                                                              Да, откуда появилась именно эта формула, а не моя?
                                                                              • –2
                                                                                ну я думаю потому что если у вас 2 одинаковых диска и вероятность того что 1 диск в период год сгорит 0.01, то вероятность того что сгорит второй диск уже меньше… ;)
                                                                                • 0
                                                                                  По теореме умножения вероятностей для независимых событий.

                                                                                  Для того, что бы массив raid0 из 8 дисков работал, нужно, что бы каждый из дисков тоже работал.

                                                                                  (см. www.mathelp.spb.ru/book2/tv5.htm).

                                                                                  Там даже похожая задача упомянута (для самопроверки):

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

                                                                                  Известна вероятность p невыхода из строя каждого элемента. Определите вероятность исправной работы всего участка цепи (событие А).


                                                                                  • 0
                                                                                    Это если события абсолютно независимы :) а выход из строя дисков одинаковой конструкции или, тем более, из одной партии после совершения практически одинакового количества схожих операций, по моему, имеет определенную связь :)
                                                                                    • 0
                                                                                      Можно сказать, что у них примерно одинаковое p. Это ничему не противоречит :)
                                                                                      • 0
                                                                                        p примерно одинаковое, но можно предположить наличие связи между этими событиями. Наглядный пример — бросок монеты дает 0.5 вероятности выпадения одной стороны. Но если монету бросает не человек, а механизм со строго определенным вектором силы, то после того, как монета упала решкой, то вероятность выпадения решки на втором броске будет больше чем 0.5
                                                                                    • 0
                                                                                      Спасибо, обязательно прочту.
                                                                                      • 0
                                                                                        Вы все перевернули с ног на голову. Умножение вероятностей происходит, когда события должны выполниться одновременно. Например, если для сбоя RAID необходимо было бы, чтобы все диски вышли из строя одновременно. Тогда нужно было бы умножить вероятности выхода из строя каждого диска.
                                                                                        В случае RAID0 выход из строя может произойти из-за сбоя хотя бы одного (любого) из дисков. В этом случае вероятности необходимо просуммировать.
                                                                                        Возвращаясь к вашей проверочной задаче. Мы имеем: для работы RAID необходимо, чтобы каждый диск работал. Вероятность НЕвыхода из строя одного диска — 0.99. Значит вероятность ОДНОВРЕМЕННОГО НЕвыхода из строя всех дисков 0.99^8 = 0.922744694. Значит, вероятность выхода из строя RAID 0,077255306, что в свою очередь равно сумме вероятностей выхода из строя 8-ми дисков (ПОЧТИ из-за погрешности округления моего калькулятора)
                                                                            • 0
                                                                              На самом деле меньше. Вы не учитываете множественных отказов. Но не на много.
                                                                            • 0
                                                                              не все так просто
                                                                              при вылете массива теряются все 8 ГБ, что при 8 отдельных дисках практически не возможно — 10^-14 %
                                                                              • 0
                                                                                10^-14 — это другой показатель, он не связан с отказом целого диска.
                                                                                • 0
                                                                                  Не сомненно, но сравнение надежности 1 диска размером Х и массива размером 8*Х не имеет смысла.
                                                                                  • 0
                                                                                    Не понял, почему?
                                                                                    • 0
                                                                                      Из-за разных размеров надежность массива/диска в этом случае не равна надежности хранения данных, следовательно нельзя сказать «надежность хранения упала во столько-то раз» и все сравнение теряет смысл.
                                                                                      • +1
                                                                                        Есть устройство, оно может сломаться. Сколько дисков там внутри — не важно абсолютно.
                                                                                  • 0
                                                                                    Не сомненно, но сравнение надежности 1 диска размером Х и массива размером 8*Х не имеет смысла. Нельзя просто сказать «надежность упала на 7%»
                                                                          • +2
                                                                            Следовательно в RAID-0 едином целом, состоящем из 8 дисков надежность ниже в 8 раз.

                                                                            Если надежность диска p, то надежность raid0 из 8 дисков будет p^8.
                                                                            Откуда вы взяли «8 раз»?
                                                                            • 0
                                                                              А вероятность отказа какая для 8 дисков?
                                                                              • 0
                                                                                Ну, в прочем, понятно. 0.08. Это как раз в 8 раз выше, чем вероятность отказа одного диска. Но надежность, действительно, не особо падает.
                                                                                • 0
                                                                                  Элементарно, Ватсон! Вероятность отказа массива raid0 для 8 дисков будет 1-p^8,
                                                                                  где p — надежность одного диска.
                                                                                  • 0
                                                                                    1-p^8
                                                                                  • 0
                                                                                    p^8 это только в случае независимости случайных величин. Причина отказа не всегда случайная величин: перепады напряжения, брак в партии или конструктивные недостатки конкретной модели.
                                                                                    • 0
                                                                                      Примем такую гипотезу, для простоты

                                                                                      Резервное копирование быть должно, с этим никто не спорит.
                                                                                      • 0
                                                                                        От подобных вещей не спасёт никакой RAID — только резервные копии.
                                                                                • 0
                                                                                  Спасибо, отлично расписали. RAID для меня еще недавно был темным лесом, но при сборке нового компьютера пару месяцев занимался вопросом — думал собрать как раз RAID5 из нескольких 500GB дисков. Но в итоге решил, что слишком много геморроя для обычного домашнего компа — видимо, правильно решил.
                                                                                  • –1
                                                                                    RAID-1 рулит :) Использую и доволен :) Благо, диски нынче дешевые, а мегаобъемы мне не нужы, лучше уж скорость…
                                                                                    • –2
                                                                                      RAID1 скорости ни чуточку не прибавляет.
                                                                                      • +1
                                                                                        ru.wikipedia.org/wiki/RAID#RAID_1 википедия говорит об обратном, график загрузки винтов на машине почему-то тоже (у меня только чтение с дисков, сервер раздает файлы с 3-х дисков в raid-1, 62 мб в сек случайного чтения, несколько тысяч файлов, 500 мбит, около 1500 потоков скачивания)
                                                                                        • 0
                                                                                          При чтении возможен небольшой прирост, но запись будет производиться так же, если не медленнее.
                                                                                        • 0
                                                                                          Зато прибавляет IOPS на чтение, в два раза.
                                                                                      • +6
                                                                                        ну статья конечно хорошая, но факты то зачем так перевирать и гиперболизировать?

                                                                                        к примеру: сравнивается скорость вращения а не скорость считывания (которая выросла не в два раза а в десятки раз, как и скорость записи)

                                                                                        к примеру2: объем десктопных дисков внезапно стал равен 11 терабайт (или даже 110 терабайт)

                                                                                        к примеру3: нелады с тервером — производитель не ожидает что сто процентов к чтению 10^14 бит таки один сбойный но будет. Совсем нет. Это может означать например что первые три года гарантии не будет ни одного сбойного бита на 10^20 прочитанных бит, а в оставшиеся 2 года гарантии будет 10^8 вероятность сбойного бита. Или еще какая другая математика. Но никак не означает что к 10^14 биту вероятность непрочтения равна 100%.
                                                                                      • НЛО прилетело и опубликовало эту надпись здесь
                                                                                        • +1
                                                                                          RAID-Z2 в ZFS например. Там она еще и тормозить не особо должна, по специфике работы с дисками.
                                                                                          • 0
                                                                                            ZFSv13 на FreeBSD поддерживает вариации отказоустойчивых массивов RAID-5 (raidz) и RAID-6 (raidz2).
                                                                                            • 0
                                                                                              У ZFS тоже есть подводные камни, например: расход памяти на ARC (кеш); в некоторых задачах без серьезного тюнинга можно получить приличный overhead по IOPS и по скорости чтения; ну и самая неактуальная «для дома, для семьи» — расчет xor и cheksumming грузит проц и увеличивает латентность операций.
                                                                                              • +1
                                                                                                > а у нас есть хоть одна программная реализация RAID-6

                                                                                                Linux Software RAID (aka LSR).

                                                                                                Он также умеет делать (и это рекомендуется) data scrub для (это к вопросу о RAID-5), плюс, ко всему прочему, как и другие внеконтроллерные-RAID'ы, прекрасно работает не только с полным объёмом диска, но и его разделами, позволяя сделать небольшой, но очень надёжный RAID-1 и, на этих же дисках, RAID-5, или что там вам больше нравится.

                                                                                                Из других вкусностей: on-line re-shape (это когда был RAID-5 на N дисках, а стал на N+1), перестройка RAID-5 → RAID-6.

                                                                                                Лично мой выбор пока — RAID-5. Делать RAID-6 имеет смысл, как минимум, при кол-ве дисков > 5 (на 4-х вы отдадите те же 2-а, как и в случае с RAID-10, а по быстродействию и нагрузке на кэш L2 явно проиграете). Вообще, есть заблуждение, что «программные» RAID'ы значительно уступают в быстродействии «аппаратным» (не люблю этот термин, ибо в любом «аппаратном» есть программа, просто выполняется она на отдельном процессоре), но это, всё же, миф. Если говорить о производительности операции XOR (основа для RAID-5), то с этим всё более, чем прекрасно, да и RAID-6 арифметика тоже хорошо бы если оказалась bottle-neck'ом. Вообще, у каждого из RAID-решений свои ±'ы, их просто нужно знать.
                                                                                              • –2
                                                                                                Спасибо, познавательная статья.
                                                                                                • 0
                                                                                                  немного позанудствую:
                                                                                                  «BER это только вероятность, которая стремится к 100 к 11-му терабайту%» — криво написано. На самом деле если говорить что это за вероятность в вероятностной оценке, то получиться, что BER — это вероятность, которая может быть принята в какое-то внимание в районе 11го терабайта. Скорее всего эту мысль хотел сказать автор.
                                                                                                  Если же говорить по честному — ничего вам эта цифра не скажет при маленькой выборке. надо хотя бы сотню 11-титерабайтных операций проделать, чтобы что-то сказать.

                                                                                                  по теме:
                                                                                                  в статье мешаются домашнее и промышленное (десктопы и сервера) применения. для промышленных решений хранение данных всегда выводиться в отдельную дисковую систему. там же всё очень и очень зависит от комплексных задач. может быть эффективнее и десятый рейд сделать.
                                                                                                  • 0
                                                                                                    Эта холодная цифра означает, что с 16-20-процентной вероятностью вы получите отказ диска во время ребилда (и, следовательно, потеряете все данные на RAID).

                                                                                                    Это отказ не диска, а операции чтения. Она не может привести к потере всех данных.
                                                                                                    • –2
                                                                                                      Если она происходит в момент ребилда — она приведет к потере всего RAID.

                                                                                                      Про что, собсно, и спич.
                                                                                                      • 0
                                                                                                        Нет! Произойдет искажение кусочка данных, а не потеря всех данных.
                                                                                                        • –1
                                                                                                          «Искажение кусочка» произойдет в случае использования одного диска, без RAID. В случае RAID нарушится его внутренняя консистентность. Результаты обычно непредсказуемы, чаще всего массив становится failed и данные становятся недоступны.
                                                                                                          • 0
                                                                                                            Во первых, повторяю, произойдет нарушение только на уровне блока, это не потеря всех данных!

                                                                                                            Во вторых, это проблема легко решается на уровне рейд-контроллера путем повторных чтений и проверки записи.
                                                                                                            • 0
                                                                                                              Вывод в том, что проблема только в скорости сборки RAID, а что он умрет во время сборки — это маловероятно.
                                                                                                        • 0
                                                                                                          Куда делась многоуровневая коррекция данных?!
                                                                                                        • 0
                                                                                                          Более того, она будет парирована коррекцией ошибок.
                                                                                                          • 0
                                                                                                            Тут как раз рассматривается вероятность, когда коррекция (проверка) не сработала.

                                                                                                            Т.е. ложные данные были восприняты, как истинные, т.к. у них контрольная сумма совпала.
                                                                                                            • 0
                                                                                                              С фигли? С чего это у них совпала контрольная сумма? Какова вероятность такого совпадения? Куда делись алгоритмы коррекции множественных ошибок? Одиночный бит вообще никаким образом не может повредиться данные где бы ни произошла ошибка. И два бита тоже. А теперь посчитайте вероятность одновременного отказа трёх битов в одном секторе. Да ещё чтобы это было воспроизводимо при повторном чтении.
                                                                                                              «Это вероятность сбоя, из расчета некоего объема прочитанных головками диска бит»
                                                                                                              Вы чувствуете разницу между «считанными головками» и «выданную жёстким диском»?
                                                                                                              • 0
                                                                                                                > Какова вероятность такого совпадения?

                                                                                                                10^-14… 10^-16
                                                                                                                • 0
                                                                                                                  Ещё раз — Вы это с чего взяли? Почитайте определение BSR по вашей же ссылке. Это вероятность ошибочного чтения бита головкой. Дальше идёт могучая коррекция ошибок. Вероятность некорректируемой или необнаружимой ошибки будет неизмеримо меньше. Вам нужно чтобы в пределах одного сектора произошли множественные ошибки. При этом вероятность одной ошибки ~10^14. Вероятность двух ошибок подряд ~10^28. При этом такая ошибка будет однозначно скорректирована. даже если произойдёт некорректируемая ошибка, то она с большой вероятностью будет обнаружена, т.к. алгоритмы коррекции позволяют определять больше ошибок, чем корректировать. Произойдёт повторное чтение данных. Короче говоря, нужно, чтобы при множественных повторных чтениях возникали некорректируемые ошибки, либо, чтобы чтобы произошла намного (на десятки порядков!) менее вероятная необнаружимая ошибка. Сдаётся мне, что вероятность такого события приближается к вероятности пролёта заряженной частицы через кристалл процессора.
                                                                                                                  • 0
                                                                                                                    > Ещё раз — Вы это с чего взяли? Почитайте определение BSR по вашей же ссылке.

                                                                                                                    Я ссылок на это, вроде, не давал :)
                                                                                                                    Да, немного ошибся, порядок такой ошибки 10^-21

                                                                                                                    Вот, какие данные дает Seagate для линейки Savvio:

                                                                                                                    Read Error Rates [1]

                                                                                                                    Recovered Data
                                                                                                                    Less than 10 errors in 10^12 bits transferred (OEM default settings)

                                                                                                                    Unrecovered Data
                                                                                                                    Less than 1 sector in 10^15 bits transferred (OEM default settings)

                                                                                                                    Miscorrected Data
                                                                                                                    Less than 1 sector in 10^21 bits transferred

                                                                                                                    Информация отсюда:
                                                                                                                    www.seagate.com/support/disc/manuals/scsi/savvio_pm.pdf
                                                                                                                    • 0
                                                                                                                      Кстати, вот, по-моему, еще одно недопонимание автором топика сути. Он говорит:

                                                                                                                      Несложная математика уровня calc.exe говорит нам, что 10^14 бит это всего лишь около 11TB данных. Это означает, что производитель жестких дисков говорит нам таким образом, что считав с диска с параметром BER 10^14, то есть обычного, десктопного класса диска, примерно 11TB, мы

                                                                                                                      Это означает, что с такой вероятностью придется делать повторное чтение, которое пройдет незаметно, а не искажение/порча данных.

                                                                                                                      Порча начинается, как выше было упомянуто, с «Less than 1 sector in 10^21 bits transferred».
                                                                                                                      • 0
                                                                                                                        Нет, с Miscorrected это отдельный случай. Речь идет о простой ошибке, которая случилась, а вот насчет исправить ее тут начинаются сложности.
                                                                                                                        Вариантов исправления есть не один, и не все они между собой и контролнером RAID хорошо взаимодействуют. Например такие вещи как RAID-specific, time-limited error recovery (TLER) в RAID-сериях WD, по отзывам скорее мешают, чем помогают.

                                                                                                                        Вообще использование не-RAID винтов в RAID, как и наоборот RAID в десктопах, это тоже благодатная тема для разбора.
                                                                                                                      • +1
                                                                                                                        Все верно. Действительно существует три (ну, в общем) типов ошибки. Первая — ошиблись, и исправились. Никто ничего не заметил снаружи диска. Ошибка не ушла дальше контроллера на винте.
                                                                                                                        Вторая — ошиблись, и восстановить не смогли. Времени не хватило, или участок сбоя достаточно обширен, чтобы на него не хатило помехоустойчивого кода. Ошибка вышла наружу, но мы ее видим, контроллер говорит — «вот, ошибка, упс».
                                                                                                                        Третья — ошиблись, но не заметили. И никто не заметил. Ошибочный блок вышел наружу и попал в программу, или записался на диск незамеченным, потому что у всяких CRC тоже есть конечная надежность.
                                                                                                                        Вероятность невелика, да, но она есть.

                                                                                                                        В данном топике рассматриваем проблему с ошибкой 2.
                                                                                                                      • 0
                                                                                                                        Соответственно, вероятность искажения данных (Miscorrected Data) —
                                                                                                                        Less than 1 sector in 10^21 bits transferred
                                                                                                                    • 0
                                                                                                                      Да сейчас, как впрочем и лет 10 назад всё держится именно на алгоритмах коррекции ошибок. раньше, винты имели такую характристику в SMART как RAW_READ_ERROR, так этот параметр крутится как вентилятор, это показывает то что ошибки возникают постоянно и алгоритмы их корректируют. С приближением грозы, частота таких ошибок увеличивается раз в 100(сам наблюдал), что как бы намекает. Это только вопрос лишь времени(а иногда и условий!) когда возникнет ситуация что алгоритмы пропустят ошибочные данные либо не смогут скорректировать ошибку. Вот именно эту вероятность производитель и оценивает в 10^-14…10^-16
                                                                                                              • +1
                                                                                                                Откуда возникает «для архива домашней видеоколлекции потеря ее в считанные секунды и не будет такой уж большой катастрофой»? Почему из-за одного бита летит вся инфа?
                                                                                                                • –4
                                                                                                                  Если это произойдет в момент ребилда RAID-5, когда он не защищен ничем — то операция rebuild остановится, и станет не degraded, а failed, и массив можно будет восстановить только (может быть) руками, у всяких «мастеров-волшебников».
                                                                                                                  • +4
                                                                                                                    Вы никогда не видели RAID-5
                                                                                                                    • 0
                                                                                                                      Это стандартное поведение и никак нельзя заново запустить rebuild? Так делают все контроллеры или только хорошие\плохие? Потому что выглядит это достаточно глупо, из-за одного бита клинить весь процесс, ведь часто этот бит особой роли не играет и уж точно не так критичен, как недоступность всех данных :)

                                                                                                                      Как вообще девайс определяет сбой по BER? Если просто неправильно читает бит, то это должно быть незаметно для винта. Если вываливаются какие-то внутринние сообщения об ошибке, то почему не перечитать ещё раз?
                                                                                                                      • 0
                                                                                                                        Почему? Сбойный бит может находиться либо в блоке контроля чётности, либо в блоке данных.
                                                                                                                        В случае, если в блоке контроля чётности — будет искажён 1 бит (который был на утеряном винте).
                                                                                                                        В случае, если он встретится в блоке данных, будет искажён 1 бит, если потерян винт с блоком контроля чётности и 2 бита, если потерян винт с блоком данных.
                                                                                                                        А теперь объясните, как искажение максимум 2х бит приведёт к потере всех данных.
                                                                                                                        • 0
                                                                                                                          Только не бит, а сектор, размером 512 байт — раз.
                                                                                                                          А искаженный блок (сектор) диска потому, что диск оперирует секторами. Это минимальный квант для контроллера диска.
                                                                                                                          Однако RAID также работает не с секторами, а со своими блоками.
                                                                                                                          Вот тут у меня под руками в доке указан размер элемента RAID равный по умолчанию 64KB. Помножаем на число дисков, то есть sripe size, например 8, и получаем итог. Один сбойный бит делает неверной информацию в, примерно, 512 килобайтах данных.
                                                                                                                          • 0
                                                                                                                            Битый сектор не влияет на данные с оставшейся части блока 64кб.
                                                                                                                            • 0
                                                                                                                              … в оставшейся…
                                                                                                                              • 0
                                                                                                                                «Контрольная сумма» считается не с сектора, а вот с этого вот блока.
                                                                                                                                • +1
                                                                                                                                  Контрольная сумма для блока не считается. Ее негде хранить :)
                                                                                                                                  • +1
                                                                                                                                    Контрольная сумма для блока считается и хранится на диске, именно эта информация используется для определения бэдблоков (сбоев секторов).
                                                                                                                                    Просто она доступна только для контроллера самого диска.