Новая файловая система ReFS от Microsoft первоначально появилась на серверах под управлением Windows 2012. И только позже она была включена в Windows 10, где может быть использована только как часть функции Storage Spaces (технология виртуализации дискового пространства) пула дисков. В Windows Server 2016 Microsoft обещают значительно улучшить работу с файловой системой ReFS, к тому же, по попадающим слухам в печать, ReFS может прийти на замену устаревшей файловой системе NTFS в новой версии Windows 10, которая гордо носит название Windows 10 Pro (для продвинутых ПК).
Но что же на самом деле представляет собой ReFs, чем она отличается от ныне используемой файловой системы NTFS и какие плюсы она в себе несет
Что такое ReFS
Если коротко, то она разрабатывалась, как отказоустойчивая файловая система. ReFS – это новая файловая система, созданная с использованием кода и по сути является переработанной и улучшенной файловой системой NTFS. К ним относятся улучшенная надежность хранения информации, стабильная работа в стресс режимах, размеры файлов, томов, каталогов, количество файлов в томах и каталогах ограничена лишь величиной знаков 64-битного числа. Напомним, что максимально при такой величине максимальный размер файла будет равен 16 эксбибайт, а размер тома 1 йобибайт.
На текущий момент ReFS – не замена NTFS. Она имеет свои преимущества и недостатки. Но вы не сможете, скажем, отформатировать диск и установить на него свежую копию Windows так как бы вы сделали это на NTFS.
ReFS защищает ваши данные
ReFS использует контрольные суммы для метаданных, а также может использовать контрольные суммы для файлов данных. Каждый раз, когда вы читаете или записываете файлы, ReFS проверяет контрольную сумму, чтобы убедиться в ее правильности. Это означает, что сама файловая система имеет инструмент, способный обнаруживать искаженные данные на лету.
ReFS интегрирована с функцией Storage Spaces. Если вы настроили зеркалирование с поддержкой ReFS, Windows легко обнаружит повреждение файловой системы и автоматически устранит, скопировав отзеркалированные данные на поврежденный диск. Данная функция доступна как для Windows 10, так и для Windows 8.1.
В случае если ReFS обнаруживает поврежденные данные, а требуемой копии данных для восстановления нет, файловая система в состоянии сразу же удалить поврежденные данные с диска. Для этого не потребуется перезагрузки системы в отличие от NTFS.
ReFS не только проверяет целостность файлов во время записичтения. Она автоматически сканирует целостность данных, регулярно проверяя все файлы на диске, идентифицируя и исправляя поврежденные данные. В таком случае отпадает необходимость периодически запускать команду chkdsk для проверки диска.
Новая файловая систем также устойчива при повреждении данных иными способами. Например, вы обновляете метаданные файла (пускай имя файла). Файловая система NTFS напрямую изменить метаданные файла. Если в это время произойдет сбой системы (отключиться питания) большая вероятность, что файл будет поврежден. Когда вы изменяете метаданные, файловая система ReFS создает новую копию метаданных. Файловая система не перезаписывает старые метаданные, а записывает их в новый блок. При этом исключается возможность повреждения файла. Такая стратегия называется “copy-on-write” (копирование при записи, выделение при записи). Данная стратегия доступна в других современных файловых системах, таких как ZFS и BtrFS в Linux, а также в новой файловой системе Apple APFS.
Ограничения файловой системы NTFS
ReFS более современна, чем NTFS и поддерживает гораздо большие объемы данных и более длинные имена файлов. В долгосрочной перспективе это очень важно.
В файловой системе NTFS путь к файлу ограничен 255 символами. В ReFS максимальное количество символов составляет уже внушительные 32768 символов. В настоящее время в Windows 10 существует возможность отключить символьный элемент для NTFS. На дисковых томах ReFS такой лимит по умолчанию отключен.
ReFS не поддерживает имена файлов в формате DOS 8.3. На томах NTFS вам доступны папки “CProgram Files”, “CProgra`1”. Они нужны для совместимости со старым программным обеспечением. В ReFS вы не найдете привычных нам папок. Они удалены.
Теоретический максимальный объем данных, поддерживаемый NTFS – 16 эксабайт, ReFS поддерживает до 262144 эксабайт. Сейчас такая цифра кажется просто огромной.
Производительность ReFS
Разработчики не ставили цель создать более производительную файловую систему. Они сделали более оптимизированную систему.
Например, при использовании с массивом, ReFS поддерживает оптимизацию уровней в режиме реального времени. У вас собран пул из накопителей, состоящий из двух дисков. Первый диск подобран с расчетом на высокую скорость работы, быстрый доступ к данным. Второй диск подобран с критерием надежности, под долговременное хранение данных. В фоновом режиме ReFS автоматически переместит большие куски данных на более медленный диск, обеспечив тем самым надежность сохранения данных.
В Windows Server 2016 разработчики добавили инструмент, обеспечивающий повышение производительности с помощью определённых функций виртуальных машин. Например, ReFS поддерживает копирование блоков, что ускоряет процесс копирования виртуальных машин и операций слияния контрольных точек. Чтобы создать копию виртуальной машины, ReFS создает новую копию метаданных на диске и указывает ссылку на скопированные данные на диске. Это сделано для того, чтобы с помощью ReFS несколько файлов могли ссылаться на одни и те же базовые данные на диске. После того, как вы, поработав с виртуальной машиной, измените данные они записываются на диск в другое место, а исходные данные виртуальной машины остаются на диске. Это значительно ускоряет процесс создания копий и уменьшает нагрузку на диск.
ReFS поддерживает “Sparse VDL” (разряженные файлы). Разряженный файл – это файл, в котором последовательность нулевых байтов заменена информацией об этой последовательности (список дыр). Дыры – определенная последовательность нулевых байт внутри файла, не записанных на диск. Сама информация о дырах хранится в метаданных файловой системы.
Технология поддержки разряженных файлов позволяет быстро записывать нули в большой файл. Это значительно ускоряет процесс создания нового, пустого файла виртуального жесткого диска фиксированного размера (VHD). Создание такого файла в ReFS занимает несколько секунд, тогда как в NTFS подобная операция занимает до 10 минут.
И все же ReFS не в состоянии полностью заменить NTFS
Все, что мы описали выше звучит неплохо, но вы не сможете переключиться на ReFS из NTFS. Windows не может загрузиться из файловой системы ReFS, требуя при этом NTFS.
В ReFS отсутствуют многие технологии, доступные в NTFS. Например, сжатие и шифрование файловой системы, жесткие ссылки, расширенные атрибуты, дедупликацию данных и дисковые квоты. При этом в отличие от NTFS ReFS поддерживает технологию полного шифрования данных — BitLocker.
В Windows 10 вы не сможете отформатировать раздел диска с ReFS. Новая файловая система доступна только для систем хранения, где ее основная функция защитить данные от повреждения. В Windows Server 2016 вы сможете отформатировать раздел диска в ReFS. Вы сможете использовать его для запуска виртуальных машин. Но вы не сможете выбрать его в виде загрузочного диска. Windows загружается только с файловой системы NTFS.
Непонятно, какое будущее Microsoft уготовило новой файловой системе. Возможно, в один прекрасный момент она полностью заменит NTFS во всех версиях Windows. Но на данный момент ReFS можно использовать только для определенных задач.
Применение ReFS
Выше было много сказано в поддержку новой операционной системы. Описаны минусы и плюсы. Предлагаю остановиться и подвести итог. Для каких же целей можно, а может и нужно использовать ReFS.
В Windows 10 ReFS применим только в совокупности с компонентом Storage Spaces. Обязательно отформатируйте свой диск, выделенный под хранение данных в ReFS, а не NTFS. В таком случае вы сможете в полной мере оценить надежность хранения данных.
В Windows Server вы сможете отформатировать раздел под ReFS с помощью стандартного инструмента Windows в консоли управления дисками. Рекомендуется обязательно отформатировать под ReFS, если вы используете виртуальные сервера. Но помните, что загрузочный диск должен быть отформатирован под NTFS. Загрузка из-под файловой системы ReFS не поддерживается операционными системами Windows.