ReFS
ReFS (Resilient File System — отказоустойчивая файловая система) — файловая система, разработанная корпорацией Microsoft для серверных версий Windows и отдельных изданий Windows 10/11. Она представляет собой эволюционное развитие NTFS (New Technology File System), нацеленное на повышение устойчивости к повреждениям данных, масштабируемости для больших томов и поддержку новых сценариев хранения, таких как Storage Spaces. В отличие от NTFS, ReFS изначально проектировалась с акцентом на самовосстановление структуры данных и предотвращение их потери, а не на обратную совместимость с устаревшими механизмами.
История развития
Разработка ReFS началась в конце 2000-х годов как часть инициативы Microsoft по созданию файловой системы нового поколения для облачных и серверных сред. Первая публичная версия была представлена в 2012 году вместе с выходом Windows Server 2012. Изначально система носила рабочее название «Protogon». Первоначальная версия ReFS была доступна только в серверных редакциях и предназначалась для работы с Storage Spaces — технологией виртуализации хранения.
Ключевые версии ReFS:
- ReFS версии 1.0 (2012) — первая реализация, использовалась в Windows Server 2012 и Windows 8.1. Поддерживала только хранение данных в режиме «только запись» (write-only) при использовании Storage Spaces.
- ReFS версии 3.1 (2016) — появилась в Windows 10 версии 1703 (Creators Update) и Windows Server 2016. Была добавлена поддержка проверки целостности данных, исправление ошибок, поддержка больших кластеров и параллельные операции ввода-вывода. Эта версия стала основной для серверных изданий.
- ReFS версии 3.4 (2018) — версия для Windows 10 версии 1809. Включила поддержку ускоренной работы в режиме Storage Spaces Direct и улучшенного выравнивания данных. В этой версии также была реализована утилита
chkdskдля чтения повреждённых файлов. - ReFS версии 3.7 (2021) — актуальная версия для Windows 11 и Windows Server 2022. В неё добавлена поддержка дедупликации данных для рабочих нагрузок, включая резервное копирование и архивирование.
На протяжении всей истории развития ReFS доступность системы в потребительских версиях Windows была ограничена — она присутствует только в изданиях Pro for Workstations и Enterprise, в то время как в стандартных изданиях Pro и Home её нет.
Архитектура и ключевые особенности
Модель целостности данных
Основное отличие ReFS от NTFS — встроенная система проверки и восстановления целостности данных. ReFS использует концепцию «онлайн-проверки» (online scrubbing) и метаданных с контрольными суммами (checksums). Система автоматически вычисляет хеш для каждого блока данных и хранит его отдельно. При чтении файла ReFS сравнивает вычисленную контрольную сумму с сохранённой — при несовпадении файл считается повреждённым.
Механизмы защиты:
- Зеркалирование метаданных — все метаданные (таблицы файловой системы, каталоги, имена файлов) дублируются на диске. При повреждении одной копии система автоматически обращается к резервной.
- Проверка контрольных сумм — для пользовательских данных контрольные суммы опциональны и включаются только для томов с включённой политикой целостности (integrity streams). По умолчанию эта политика активна для томов Storage Spaces.
- Автоматическое восстановление — при обнаружении ошибки ReFS пытается восстановить данные из других копий (зеркал или дисков в Storage Spaces). Если копии нет, система уведомляет администратора.
Структура B+ деревьев
ReFS, в отличие от NTFS, не использует Master File Table (MFT) и жёсткую привязку к записям в битовой карте. Внутренняя структура данных основана на B+ деревьях (самобалансирующихся структурах для поиска, вставки и удаления). Это обеспечивает:
- Линейный рост производительности — операции с метаданными (создание, переименование, удаление) выполняются предсказуемо быстро на больших объёмах (десятки и сотни терабайт).
- Устойчивое масштабирование — размер тома ReFS ограничен только возможностями операционной системы и составляет до 400 зеттабайт (фактически — без ограничений в современных реализациях). Практический предел для Windows Server 2022 — 35 петабайт.
Отсутствие некоторых функций NTFS
ReFS намеренно исключила ряд возможностей NTFS, которые могли бы снижать надёжность или усложнять восстановление:
- Сжатие на уровне файловой системы — считается рискованным для целостности при сбоях.
- Шифрование EFS (Encrypting File System) — заменяется механизмами BitLocker на уровне диска и шифрованием приложений.
- Жёсткие ссылки (hard links) — поддерживаются только для служебных нужд.
- Дисковые квоты — не реализованы на уровне ReFS, хотя управление дисковым пространством выполняется через Storage Spaces.
- Способность загрузки системы — ReFS не может использоваться в качестве системного раздела для запуска Windows (загрузчик Windows не поддерживает эту файловую систему).
Классификация и виды томов
ReFS поддерживает два основных режима работы:
- Том без проверки целостности пользовательских данных — используется на обычных дисках (без Storage Spaces). Метаданные защищены контрольными суммами, но пользовательские файлы — нет. В случае сбоя система автоматически восстановит метаданные, но данные могут быть потеряны.
- Том с включённой проверкой целостности — используется только для Storage Spaces (зеркальные или чётные диски). Контрольные суммы накладываются на все данные, что позволяет системе автоматически обнаруживать и исправлять как логические, так и физические повреждения.
Также ReFS поддерживает динамическое изменение размера тома (увеличение или уменьшение) при добавлении или удалении дисков из Storage Spaces, но без возможности прямого изменения без пересоздания тома.
Применение и сценарии использования
Серверные среды
Основная область применения — корпоративные и облачные дата-центры. ReFS широко используется в:
- Windows Server (версии 2012-2022) — особенно с технологией Storage Spaces Direct, обеспечивающей создание программно-определяемых сетей хранения данных (SDS) с высокой доступностью.
- Hyper-V — ReFS оптимизирована для хранения виртуальных машин. При использовании ReFS на томе, содержащем VHDX-файлы, производительность операций создания и клонирования значительно выше, чем на NTFS, благодаря механизмам Copy-on-Write и быстрого выделения блоков.
- Файловые серверы с большими объёмами — где требуется масштабирование до сотен терабайт без потери производительности.
Потребительские сценарии
В Windows 10/11 ReFS доступна только для рабочих станций и изданий Enterprise. Типичные применения:
- Хранение больших медиа-библиотек (видео, базы данных, резервные копии) — объёмом более 10-20 ТБ.
- Работа с системами хранения, построенными на Storage Spaces — создание программных RAID-массивов с возможностью замены дисков без потери данных.
- Ускорение работы с виртуальными машинами — при размещении VHDX на ReFS.
Ограничения потребительского использования
- Невозможность загрузки системы — ReFS не может быть системным диском.
- Отсутствие съёмных носителей — ReFS не поддерживается на USB-флешках и внешних дисках.
- Частичная совместимость — некоторые приложения (например, старые версии дефрагментаторов) не распознают ReFS.
- Необходимость в дополнительном администрировании — отсутствие встроенных инструментов массового управления томами.
Преимущества и недостатки
Преимущества
- Масштабируемость — практическая поддержка томов до 35 ПБ без деградации производительности.
- Устойчивость к повреждениям — автоматическое восстановление метаданных и данных при наличии копий.
- Высокая производительность при работе с виртуальными машинами — скорость клонирования VHDX на ReFS в 2-5 раз выше, чем на NTFS.
- Отсутствие фрагментации метаданных — благодаря структуре B+ деревьев.
Недостатки
- Отсутствие обратной совместимости — ReFS не читается старыми версиями Windows (до Windows Server 2012) и не поддерживается на других операционных системах без сторонних драйверов (например, extFS на Linux).
- Ограниченный набор функций — нет сжатия, EFS, дисковых квот, возможность загрузки.
- Необходимость в дополнительном оборудовании — для оптимальной отказоустойчивости рекомендуется использование нескольких дисков (Storage Spaces).
- Сложность восстановления данных — стандартные утилиты, восстанавливающие данные с NTFS, часто не работают с ReFS или не дают полной информации.
Сравнение с NTFS
| Характеристика | NTFS | ReFS |
|---|---|---|
| Максимальный размер тома | 256 ТБ (теоретически 16 ЭБ) | 35 ПБ (практически, без ограничения в теории) |
| Максимальный размер файла | 256 ТБ | 35 ПБ |
| Контрольные суммы метаданных | Нет (только журнал) | Да |
| Поддержка Storage Spaces | Ограниченная (нет самовосстановления) | Полная |
| Скорость клонирования VHDX | Низкая (копирование блоков) | Высокая (Copy-on-Write) |
| Поддержка старых ОС | Да (начиная с Windows NT 3.1) | Нет (Windows Server 2012+) |
| Дефрагментация | Есть | Не требуется (метаданные фрагментируются слабо) |
Интересные факты
- ReFS использует алгоритмы хеширования SHA-256 для контрольных сумм, что обеспечивает высокую степень защиты от случайных изменений данных.
- В версии 3.7 (Windows 11) ReFS поддерживает дедупликацию данных только для резервных копий, а не для общего хранения, что отличается от NTFS с дедупликацией.
- ReFS не имеет журнала транзакций, аналогичного журналу NTFS ($LogFile). Вместо этого целостность метаданных обеспечивается через механизм Copy-on-Write, который записывает новые версии блоков только после полного завершения операции.
Источники
- Microsoft Docs. «ReFS overview». Windows Server documentation.
- Microsoft Research. «Design of the Resilient File System (ReFS)».
- B. Kedarisetti, J. Kearney. «File System Technologies: NTFS, ReFS and Beyond». TechNet Magazine.
- Murphy, M. (2019). «Windows Server 2019 Administration». Apress, глава 14.
- Документация Microsoft по ReFS: https://learn.microsoft.com/en-us/windows-server/storage/refs/refs-overview (архивировано).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →