Отказоустойчивое хранение

Контрольные данные RAID

Определение

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

Также ищут: RAID parity · parity data · паритет RAID · данные чётности

Зачем это знать

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

Связи из словаря

Карта понятия

Контрольные данные RAID
Доказательная часть

Что подтверждено

  1. Защита на основе контрольных данных использует вычисляемую избыточность для восстановления утраченных блоков после допустимого числа отказов устройств.

    Граница применимости: RAID 5 и RAID 6 — схемы с восстановлением утраченных частей; конкретная математика и размещение зависят от реализации.

  2. RAID 5 допускает отказ одного устройства, а RAID 6 — любых двух; число допустимых отказов нельзя выводить из общего слова «контрольные данные».

    Граница применимости: Сопоставление отраслевых определений RAID 5 и RAID 6. Речь об отказах устройств внутри одной исправно организованной группы.

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

    Граница применимости: Базовое размещение RAID 5; иные уровни и раскладки конкретного изготовителя могут отличаться.

  4. Учебный пример побитового исключающего ИЛИ: для данных 1010 и 1100 контрольная строка равна 0110. Если первая строка утрачена, а вторая и контрольная исправны, операция над 1100 и 0110 восстанавливает 1010.

    Граница применимости: Четырёхбитная иллюстрация одиночного известного стирания по идее паритета. Это не описание всех алгоритмов RAID 6 и не проверка целостности произвольного реального массива.

  5. Если три строки простого примера паритета не согласуются, одно это не сообщает, какая из них ошибочна. Восстановление заранее известной утраченной строки и поиск неизвестного повреждения требуют разных исходных сведений.

    Граница применимости: Редакторский вывод для простой схемы с одной контрольной строкой. Возможности контрольных сумм и специальных механизмов целостности конкретной системы проверяют отдельно.

  6. Документация Linux MD отдельно описывает политику согласованности массива, включая поддержанные способы восстановления согласованности и журналирования. Одно название RAID 5 не подтверждает, какой механизм выбран для незавершённой записи.

    Граница применимости: Параметр политики согласованности в документации ядра Linux 6.12; применимость механизмов зависит от уровня и конфигурации. Это не универсальная гарантия сохранения данных при потере питания.

  7. В Linux MD операция check проверяет согласованность избыточных данных, а repair предназначена для исправления обнаруженных расхождений. Проверка check не исправляет найденное несовпадение как repair, но при ошибке чтения возможны восстановительные записи; считать check безусловно режимом без записи нельзя.

    Граница применимости: Документация sync_action в MD ядра Linux 6.12. Это различие операций проверки и исправления, а не разрешение безопасно запускать их на любом повреждённом массиве без плана восстановления.

  8. Счётчик mismatch_cnt в Linux MD относится к секторам, которые были бы переписаны при check или переписывались при исправлении. Это не число повреждённых файлов и не указание, какой вариант данных верен. Из-за размера единицы проверки счётчик может быть больше числа действительно различающихся секторов.

    Граница применимости: Документированная семантика mismatch_cnt ядра Linux 6.12. Проверка избыточности не заменяет проверку содержимого приложения; нулевой счётчик не подтверждает возврат удалённой записи.

  9. Четыре или шесть дисковых операций не означают задержку приложения ровно в четыре или шесть раз больше. Чтения и записи могут перекрываться, кэш менять фактический состав работы, а полная полоса использовать другой путь. Скорость конкретного заказа подтверждают на его нагрузке.

    Граница применимости: Редакторское разграничение подсчёта операций по механизму Linux md и измеренной производительности. Нет гарантированного числа IOPS или коэффициента замедления.

  10. Защищённый батареей кэш контроллера сам по себе не исключает частичную запись страницы PostgreSQL размером 8 КиБ. Документация требует гарантии, что целая страница попадает в защищённый модуль как единое целое; без неё BBU не заменяет защиту полным образом страницы в WAL.

    Граница применимости: PostgreSQL 18 Reliability: граница BBU и обычной страницы 8192 байта. Это не общее разрешение отключить защиту страниц при наличии батареи; свойства конкретного контроллера требуют подтверждения.

Граница терминов

Не путать

Контрольные данные RAID Зеркалирование данных

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

Контрольные данные RAID Чередование данных

Чередование задаёт, где расположены разные порции. Контрольные данные добавляют избыточность; доля физической полосы под неё не становится пользовательской ёмкостью.

Перед спецификацией

Что проверить

  1. Укажите точный уровень и число активных участников одной группы.
  2. Отделите объём пользовательских данных от контрольных долей в расчёте полосы и ёмкости.
  3. Проверьте, сколько известных потерь устройств допускает выбранная схема.
  4. Не назначайте повреждённый диск только по факту несогласованности контрольных данных.
  5. Зафиксируйте поддержанный механизм согласованности незавершённых записей и его действующую настройку.
  6. Сверьте состояние восстановления и оставшийся запас допустимых потерь после отказа.
  7. Проверьте отдельные средства целостности и возврата данных после логической ошибки.
Открытые основания

Первоисточники

  • Исследование1
  • Документация8
  • Официальная документация
    Data Protection Best Practices SNIA Data Protection and Capacity Optimization Committee · technical white paper, редакция 2 от 27 января 2025 года · проверено

    Отделяет resilience от recovery и предупреждает, что RAID и mirroring не защищают от удаления, перезаписи или компрометации данных.

    Утверждения: 01 · 05

  • Официальная документация
    RAID 5 SNIA Technical Council · SNIA Online Dictionary, проверено 29 августа 2026 года · проверено

    Определение распределённых data/parity blocks и защиты от отказа одного устройства.

    Утверждения: 02 · 03 · 04 · 05

  • Официальная документация
    RAID 6 SNIA Technical Council · SNIA Online Dictionary, проверено 29 августа 2026 года · проверено

    Определение parity-based защиты, допускающей отказ любых двух устройств.

    Утверждения: 02

  • Первичная публикация
    A Case for Redundant Arrays of Inexpensive Disks (RAID) University of California, Berkeley / ACM SIGMOD · ACM SIGMOD 1988, страницы 109–116 · проверено

    Исходная исследовательская публикация Patterson, Gibson и Katz, которая ввела термин RAID и пять уровней исходной классификации.

    Утверждения: 04

  • Официальная документация
    Linux v6.12 — RAID arrays (md) administration Linux kernel documentation / torvalds/linux · документация ядра Linux, тег v6.12, admin-guide/md.rst, страница открыта 7 сентября 2026 года · проверено

    Открыт редактором 7 сентября 2026 года, файл по тегу v6.12 сверен. Описывает Linux MD, не любой аппаратный контроллер.

    Утверждения: 06 · 07 · 08

  • Официальная документация
    Linux v6.12 — drivers/md/raid5.c (RAID 4/5/6) Linux kernel maintainers / torvalds/linux · исходный код ядра Linux, тег v6.12, drivers/md/raid5.c, открыт 7 сентября 2026 года · проверено

    Открыт редактором 7 сентября 2026 года, файл по тегу v6.12 сверен. Источник для модели ёмкости; не доказательство штрафа записи, URE или свойств любого контроллера.

    Утверждения: 09

  • Официальная документация
    PostgreSQL 18 Documentation: Reliability PostgreSQL Global Development Group · документация PostgreSQL 18, страница открыта 7 сентября 2026 года · проверено

    Открыт редактором 7 сентября 2026 года, заголовок документа сверен. Проверить выполнение сброса всем трактом хранения, энергозависимые кэши накопителя и контроллера и границы гарантии при потере питания.

    Утверждения: 09 · 10

  • Официальная документация
    What is Mirroring? SNIA · официальное руководство, проверено 29 августа 2026 года · проверено

    Описывает mirror group, поведение чтения и записи и то, от каких логических повреждений зеркало не защищает.

  • Официальная документация
    Striping SNIA Technical Council · SNIA Online Dictionary, проверено 29 августа 2026 года · проверено

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

Карта знаний

Связанные понятия

Из знания — в навык

Курсы по теме

В каталоге

Подтвердите действие