Гид компьютерного мира - Информационный портал
  • Главная
  • Инструкции
  • Форматирование refs. Сравнивание файловых систем NTFS и ReFS на примере переименования файлов

Форматирование refs. Сравнивание файловых систем NTFS и ReFS на примере переименования файлов

Почему система называется ReFS?

ReFS означает Resilient File System — «отказоустойчивая файловая система». Хотя работа по усовершенствованию ведется по многим направлениям, отказоустойчивость остается приоритетом.

Каковы предельные мощности системы ReFS?

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

Атрибут Предел применительно к дисковому формату
Максимальный размер единого файла 2^64-1 байт
Максимальный размер единого тома Формат поддерживает 2^78 байт с размером кластеров 16 КБ (2^64 * 16 * 2^10). Адресация стеков Windows позволяет 2^64 байт
Максимальное число файлов в каталоге 2^64
Максимальное число каталогов в томе 2^64
Максимальная длина имени файла 32 тысячи символов Юникод
Максимальная длина пути 32 тысячи
Максимальный размер любого пула носителей 4 ПБ
Максимальное число пулов носителей в системе Не ограничено
Максимальное число пространств в пуле носителей Не ограничено

Можно ли конвертировать данные между NTFS и ReFS?

В Windows 8 нет возможности конвертировать данные на месте. Данные можно копировать. Это было преднамеренное решение в ходе проектирования, учитывая, какие сегодня размеры наборов данных и как неудобно было бы конвертировать на месте, а также учитывая вероятные изменения в архитектуре до и после конвертирования.

Можно ли выполнять загрузку с ReFS в Windows Server 8?

Можно ли использовать ReFS на съемных носителях или дисках?

Нет, такая возможность не реализована и не поддерживается.

Что из семантики или функций NTFS больше не поддерживается в ReFS?

Мы отказались от поддержки в ReFS следующих функций NTFS: именованные каналы, короткие имена, сжатие, шифрование на уровне файла (EFS), транзакции пользовательских данных, фрагментарное кэширование, жесткие связи, расширенные атрибуты и квоты.

Как насчет пространств на основе четности и ReFS?

Систему ReFS поддерживают функции отказоустойчивости, обеспечиваемые пространствами хранения. В Windows Server 8 автоматическое исправление данных выполняется только для зеркальных пространств.

Поддерживается ли кластеризация?

Поддерживается отказоустойчивая кластеризация, причем отдельные тома могут менять ресурсы при отка??е. Кроме того, поддерживается совместное использование пулов носителей в кластере.

Как насчет RAID? Как использовать возможности ReFS по распределению данных, зеркальному отображению и другим формам RAID? Обеспечивает ли ReFS ту скорость чтения данных, которая нужна, например, для видеофайлов?

Система ReFS применяет имеющиеся в пространствах хранения возможности избыточности данных, в том числе распределенные зеркала и четность. Ожидается, что скорость чтения в системе ReFS будет примерно на том же уровне, что и в системе NTFS, с которой у них много общего кода. Для потоковой передачи данных это будет замечательно.

Как получилось, что ReFS не обеспечивает дедупликацию, кэширование второго уровня между DRAM и хранилищем, а также запись снимков?

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

Кэширование второго уровня не реализовано явным образом в ReFS, но клиенты могут воспользоваться решениями сторонних разработчиков.

ReFS и VSS взаимодействуют для создания снимков по тому же принципу, что NTFS в средах Windows. На текущий момент они не поддерживают запись снимков или снимки свыше 64 ТБ.

Первые наработки файловой системы ReFS появились в 2012 году непосредственно в Windows Server 2012. Сейчас же технология наблюдается в операционных системах Windows 8 и 10, как замена NTFS. Необходимо разобраться, в чем ReFS лучше других файловых системах и можно ли е применять на домашних компьютерах.

Понятие ReFS

ReFS (Resilient file system) – представляет собой отказоустойчивую технологию, пришедшую на замену NTFS. Призвана устранить недостатки предшественницы и уменьшить количество информации, которая может быть потеряна при различных операциях. Поддерживает работу с файлами большого объема.

Итак, одной из преимуществ технологии – высокая защищенность данных от уничтожения. На носителях располагаются контрольные суммы и метаданные, призванные определить целостность данных на разделах. Проверка происходит при операциях чтения/записи и сразу обнаруживает поврежденные файлы.

Преимущества ReFS

В файловой системе (ФС) ReFS существуют следующие особенности:

  1. Большая производительность;
  2. Улучшение возможностей по проверке носителя на наличие ошибок;
  3. Низкая степень потери данных при появлении ошибок файловой системы и bad-блоков;
  4. Осуществление шифрования EFS;
  5. Функционал дисковых квот;
  6. Увеличенный максимальный предел файла до 18,3 Эб;
  7. Увеличенное количество хранимых в папке файлов до 18 трлн.;
  8. Максимальный объем диска до 402 Эб;
  9. Количество символов в имени файла увеличено до 32767.

Возможностей, конечно много, но это еще не всё. Правда, стоит разобрать один момент, насколько же все эти преимущества будут полезны обычному пользователю?

Для пользователя, работающего за компьютером дома, полезным окажется, разве что, быстрая скорость проверки разделов на ошибки и уменьшение потери файлов в случае этих ошибок. Конечно, в данном случае безопасность осуществляется только на уровне файловой системы, то есть она решает только свои проблемы, а проблема потери важных файлов все еще остается актуальным вопросом. К примеру, это может произойти из-за поломки жёсткого диска. Наибольший эффект технология проявляет в .

Преимуществом RAID является высокая отказоустойчивость и сохранность данных, а также высокая скорость работы, самыми используемыми уровнями RAID являются 1 и 2. Недостатки системы – большие затраты средств на покупку оборудование, а еще время, потраченное на реализацию. Думаю, что обычному пользователю это ни к чему, если он не создает домашний сервер, работающий 24 на 7.

Проведение тестов на основе ReFS и NTFS

С использованием программных средств удалось выяснить, что использование файловой системы ReFS по сравнению с NTFS не дает ощутимого роста производительности. Тесты на основе похожих циклов чтения и записи, происходящих на одном и том же диске и размеров файлов утилита Crystal Disk Mark показала идентичные результаты. Небольшое преимущество было у ReFS при копировании файлов маленького размера.

Были тесты и при использовании файлов большого объема, а в качестве подопытного кролика использовали медленный раздел жёсткого диска. Результаты оказались неутешительными, так как ReFS показала более низкие показатели по сравнению с NTFS.

Спору нет, технология еще сыра, показатели были проведены в конце 2017, но в Windows 10 технология может получить широкое применение. Лучшим вариантом использования ФС будет на основе SSD – твердотельных накопителей. Эти диски лучше HDD практически во всем.

Преимущества ReFS для других пользователей

В системе есть такая функция, как гипервизор – Hyper-V. Данная технология является виртуальной машиной. При использовании раздела, отформатированного в ReFS появилось преимущество в скорости работы. Так как ФС использует контрольные суммы и метаданные, ей достаточно сослаться на них при копировании файлов, при совпадении, физически копировать данные не приходится.

Создание виртуальных дисков в ReFS занимает секунды. В NTFS этот процесс длится минуты. Фиксированные виртуальные диски в NTFS создаются задержками и сильно нагружают жёсткий диск, с SSD это еще большая проблема, так как большое количество циклов перезаписи для носителя «смертельно». Из-за этого работать на фоне с другими приложениями будет проблематично.

Также планируется, что высокая степень совместимости ReFS будет наблюдаться с такими виртуальными машинами, как и VMware.

Недостатки файловой системы ReFS

Выше мы разобрались с достоинствами технологии ReFS и немного затронули минусы. Поговорим о недостатках подробнее. Надо понять, что пока Microsoft не внедрит технологию в Windows, никакого развития не будет. Сейчас мы имеем такие особенности:

  1. Существующие разделы Windows не подлежать для использования ReFS, то есть необходимо использовать только не использованные под систему разделы, например, те, которые предназначены для хранения файлов.
  2. Внешние накопители не поддерживаются.
  3. Преобразовать NTFS диск в диск ReFS без потери данных невозможно, только форматирование и резервное копирование важных файлов.
  4. Не всё программное обеспечение способно распознать эту ФС.

Вот такие дела. А теперь посмотрите на изображение ниже. Эта Windows 7 и здесь ФС не распознается, а при открытии раздела появляется ошибка.

В Windows 8 потребуется форматирование раздела, так как ФС также не распознается. Прежде чем использовать новую файловую систему на домашнем ПК, лучше несколько раз подумать о последствиях. В Windows 8.1 проблема решается активацией ФС с помощью редактора реестра, но такое не всегда срабатывает, тем более, использование ReFS подразумевает форматирование диска с уничтожением данных.

Некоторые проблемы возникают в Windows 10. Если новый раздел с ReFS работает стабильно, то существующий, который отформатировали в неё, Windows не распознается.

Как форматировать диск или раздел в ReFS

Допустим, пользователь наплевал на недостатки и недоработки новинки. Бог с вами, друзья, приступим к разбору инструкции по форматированию раздела в ReFS. Подскажу одну вещь, если вдруг случится неприятность и раздел откажет, для восстановления можно использовать инструмент R-Studio.

Это интересно:

Для форматирования достаточно проделать следующую процедуру:

  1. Открываем «Этот компьютер» и нажимаем правой кнопкой мышки по нужному разделу;
  2. В контекстном меню жмём пункт «Форматировать» ;
  3. В открывшемся окне в поле «Файловая система» находим REFS ;
  4. Нажимаем кнопку «Начать» и ждём.

То же самое можно проделать, используя командую строку, где поочередно надо вводить такие команды:

  1. diskpart – утилита для работы с дисками;
  2. lis vol – отобразить все разделы компьютера;
  3. sel vol 3 – где 3 номер нужного тома;
  4. format fs=refs – форматирование в нужную файловую систему.

Как включить ReFS с помощью реестра

Если у вас нет ничего, что указывало бы на ФС, возможно, её необходимо включить. Для этого нам понадобится редактор реестра. Процедура исправно срабатывает на Windows 8.1 и 10:

  1. Запускаем редактор реестра (Win+R и вводим regedit );
  2. Переходим в эту ветку — HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control\FileSystem ;
  3. В правой части окошка создаем параметр DWORD 32 бита, с названием RefsDisableLastAccessUpdate ;
  4. В качестве значения вписываем цифру 1.
  5. Находим ветку HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control ;
  6. Создаем раздел с именем MiniNT

    Как видите, возможность использовать ReFS существует, но пока что пользоваться ей не рекомендуется, тем более для домашнего компьютера это не имеет смысла. Восстановить потерянные файлы будет проблематично, да и не все программы понимают ФС.

    Скорее всего, наибольшее развитие технология получит на серверах, но это будет не скоро. Если вспомнить появление NTFS, то на полное её внедрение ушло около семи лет. Больше информации можно найти на официальном сайте Microsoft — https://docs.microsoft.com/ru-ru/windows-server/storage/refs/refs-overview . А пока что вы можете следить за новыми IT технологиями на нашем сайте, не забывайте подписываться.

Не так давно вышла новая версия Windows, а именно Windows 8. Как известно, в новой версии Windows 8, присутствует поддержка новой файловой системы, а именно ReFS. В этой статье мы поговорим о том, какие преимущество имеет данная файловая система над той же файловой системой NTFS. Ну что, приступим?

Если быть честным, то файловая система NTFS уже изжила себя (это почти тоже самое, как сравнивать 10 лет назад FAT32 с NTFS), с технической точки зрения. Файловая система ReFS может обеспечивать наиболее лучшую защиту данных на емких и быстрых жестких дисках.

Немного о файловой системе NTFS

Файловая система NTFS (New Technology File System) появилась именно тогда, когда компания Microsoft представила общественности, свою новую операционную систему – Windows 3.1. И по сей день мы в основном используем только данную файловую систему, для работы на компьютере. Со временем основные возможности файловой системы NTFS подошли к своим границам: проверка носителей данных, у которых очень большой объем, занимает достаточное количество времени, а максимальный размер файлов, практически также достигнут.

Преемница файловой системы NTFS

Именно для устранения недостатков файловой системы NTFS, компания Microsoft внедрила в операционную систему Windows 8, совершенно новую файловую систему ReFS (Resilient File System), которая является отказоустойчивой файловой системой. И демонстрирует очень высокую надежность в своей работе.

Впервые, данная файловая система была задействована еще в серверной операционной системе Windows Server 8. Хочется отметить, что компания Microsoft разрабатывала файловую систему ReFS не с нуля. Например, для открытия, закрытия, а также чтения файлов, файловая система ReFS использует те же самые интерфейсы доступа к данным API, что и файловая система NTFS. Функции файловой системы, которые остались без изменения, стали шифрование диска Bitlocker, а также символьные ссылки для библиотек. А такие функции, как сжатие данных и вовсе исчезли.

Довольно большое количество нововведение в файловой системе ReFS лежит именно в области создания структур папок и файлов, а самое главное управления ими. Эти изменения рассчитаны на автоматическое изменение исправление ошибок объектов файловой системы и самой системы, максимальное масштабирование, а самое главное на работу в режиме постоянного подключения (Always Online).

Для всех этих нововведений, корпорация Microsoft использует концепцию B+-деревьев, которая, возможно Вам будет известна из курса Базы Данных. Данная концепция заключается в том, что папке в данной файловой системе структурированы в виде обычных таблиц, а файлы выступают в роле записей данной таблицы. Даже свободное место на жестком диске, в данной файловой системе организовано в виде таблиц.

Ядром файловой системы ReFS, является таблица объектов, которая называется центральным каталогом, и в которой перечислены все таблицы в системе.

Сравнение файловых систем NTFS и ReFS
Из данной таблицы, Вы можете сделать вывода о преимуществах или же недостатках той или иной файловой системы.

Встроенная защита от сбоев в файловой системе ReFS

Файловая система ReFS избавилась от сложного управления журналом, который присутствует в файловой системе NTFS, и теперь может фиксировать новую информацию о файле в свободном месте, а это уже идет предотвращение ее перезаписывания. Но, если вдруг перезаписывание произойдет, что в принципе быть не может, то система сможет по новой прописать ссылки на записи в структуре B+- дерева.

Как и файловая система NTFS, система ReFS по своему же принципу различает информацию о файле (это метаданные), а также содержимое файла (это пользовательские данные), однако ReFS предоставляет защиту данных, как и тем, так и другим. Например, метаданные, используют защиту контрольных сумм. Данную защиту можно предоставить и пользовательским данным. Эти защищенные данные, то есть контрольные суммы, размещаются на жестком диске, которые находятся на безопасном доступе друг от друга, это делается для того, чтобы при возникновении какой-либо ошибки, данные можно было восстановить.

Передача данных из файловой системы NTFS в ReFS

Наверняка, Вы задались таким вопросом, а можно ли будет без всяких проблем передавать данные из файловой системы, например Windows XP в файловую систему Windows 8 (то есть из NTFS в ReFS) и соответственно наоборот. В самой компании Microsoft по этому вопросу отвечают следующим образом: что никакой встроенной функции преобразования формат не будет, но производить простое копирование можно будет.

Использовать файловую систему ReFS на сегодняшний день, можно пока что, как крупный диспетчер данных для сервера. Исходя из этого, невозможно будет пока что, запустить Windows 8 с диска, под управлением новой файловой системы ReFS.

Внешних накопителей с файловой системой ReFS пока что не предвидится, будут только внутренние накопители. И можно вдаль смотреть на то, что со временем файловая система ReFS будет дополняться огромным количеством различных функций и сможет заменить старую файловую систему. Это возможно будет сделано уже, с выходом первого большого пакета обновления Windows 8.

Сравнивание файловых систем NTFS и ReFS на примере переименования файлов

Давайте посмотрим, как это происходит (переименование файлов в операционной системе, которая имеет файловую систему NTFS).

Первым пунктом является то, что файловая системе NTFS записывает в журнал, что файл должен быть переименован, там же она регистрирует и все остальные действия.

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

В конце выполнения операции, в журнале появляется сообщение о том, что было произведено успешное или неуспешное переименование файлов.

Теперь давайте посмотрим, как происходит переименование файла в файловой системе ReFS.

Как видите, здесь намного меньше действий.

Во-первых, в файловой системе ReFS, новое имя для файла или папки записывает в свободное место, при этом, самое главное, старое имя сразу не стирается (не удаляется).

Как только новое имя будет записано, в файловой системе ReFS происходит создание ссылки на новое имя и будет ввести именно на новое имя.

Как происходит переименование файла или папки в файловых системах NTFS и ReFS, при отказе системы?

В файловой системе NTFS

Здесь стандартно, вначале система записывает свой запрос на изменение в журнал.

После этого, например, при отказе электропитания, сам процесс переименования прекращается и обратите внимание на то, что не остается записи ни о новом имени, ни о старом.

Затем система перезагружается и запускается программа для исправления и нахождения ошибок – chkdisk.

И вот после этого, с помощью самого журнала, при применении отката, восстанавливается только лишь изначальное имя.

А теперь посмотрим, как это происходит в файловой системе ReFS

Введение

Файловая система NTFS была представлена в далеком, по меркам IT, 1993 году. Последняя версия 3.1 вышла в октябре 2001 года, вместе с Windows XP и с тех пор NTFS не изменялась. В более новых ОС вводились новые функции, но все они использовали уже заложенные в NTFS возможности. В 2018 году Windows 10 все еще использует данную файловую систему, неужели Microsoft за прошедшее время не придумали ничего нового? Нет, таки придумали. В 2012 году была представлена серверная редакция Windows, содержащая поддержку новейшей ФС от Microsoft - ReFS (resilient file system - устойчивая файловая система). ReFS привнесла множество новых функций в экосистему Windows, которые были давно реализованы в других файловых системах. Основными из них являются использование B+ деревьев для хранения всех данных и метаданных, позволяющее фактически превратить ФС в реляционную базу данных, копирование при записи, когда реальное копирование данных происходит только при их изменении, а также проверка целостности данных. В целом все эти изменения направлены на оптимизацию производительности и повышение отказоустойчивости системы.

В этом тестировании мы оценим скорость работы файловой системы ReFS на жестких дисках, поскольку для них внедренные в ФС возможности представляют большую ценность. В одном из обновлений Microsoft исключила из Windows 10 возможность форматирования разделов в ReFS, поэтому для этой цели мы воспользуемся свободной утилитой mkrefs. Для тестирования в конце дискового пространства был выделен раздел объемом 8 ГБ. Производились операции копирования на HDD и чтения с него музыкальных файлов, изображений, видеороликов, а также ISO-образа. Кроме того запускались тесты CrystalDiskMark. Для построения графиков использовался табличный процессор LibreOffice Calc, входящий в состав свободного офисного пакета LibreOffice.

Характеристики тестовой системы:

  • Процессор: Xeon E5440 @ 3.4 ГГц
  • GIGABYTE GA-P35-DS3L
  • Оперативная память: 3584 МБ DDR2-800
  • Жесткий диск: Seagate Barracuda 7200.10 3250410AS 250 ГБ SATA II
  • Твердотельный накопитель: SanDisk SDSSDHII-120G-G25 120 ГБ
  • Windows 10 Pro x64, сборка 16299.309

Результаты тестов:

CrystalDiskMark 5.5.0 x64, последовательное чтение (МБайт/с)


CrystalDiskMark 5.5.0 x64, последовательная запись (МБайт/с)

CrystalDiskMark 5.5.0 x64, случайное чтение (МБайт/с)

CrystalDiskMark 5.5.0 x64, случайная запись (Мбайт/с)


Запись 1000 mp3 файлов (6,34 ГБ), с


Запись 10000 изображений (3,39 ГБ), с

Запись 50 видеороликов (4,5 ГБ), с


Запись ISO-образа (2,3 ГБ), с


Чтение 1000 mp3 файлов (6,34 ГБ), с


Чтение 10000 изображений (3,39 ГБ), с


Чтение 50 видеороликов (4,5 ГБ), с


Чтение ISO-образа (2,3 ГБ), с


Заключение

Безусловно, файловая система ReFS является большим шагом вперед, по сравнению с NTFS с точки зрения отказоустойчивости. Однако, с точки зрения производительности не все так гладко. ReFS опережает NTFS при работе со множеством мелких файлов и при чтении файлов большого объема, а NTFS, в свою очередь, лидирует при работе с файлами среднего размера и при записи больших файлов.

Кроме непосредственно ReFS и NTFS в тестировании также приняли участие гости из мира Linux - широко распространенные ФС Ext2, Ext4 и BTRFS, а также все еще применяющаяся FAT32 и ее замена exFAT. Интересно, что BTRFS и ReFS практически во всех тестах демонстрирует схожую производительность, что впрочем неудивительно, поскольку обе системы очень похожи. FAT32 и exFAT не имеют функции журналирования и чувствительны к непредвиденным сбоям, поэтому их нецелесообразно применять там, где важна сохранность данных. Отсутствие журналирования положительно сказывается на работе флеш-накопителей, коие собственно и являются основной средой использования FAT32 и exFAT. Во многих случаях данные файловые системы показывают лучшую производительность, нежели журналируемые ФС, особенно при работе с файлами среднего и большого объема.

Таким образом, можно сказать, что файловая система ReFS определенно имеет свои преимущества и ее применение в определенных случаях не только является оправданным, но и даже рекомендуемым. Да, в настоящий момент ReFS еще не так распространена, как хотелось бы, но, возможно, в будущем, ее производительность повысится, добавится новый функционал и расширится существующий, и она не только обретет бо́льшую известность, но и заменит собой NTFS.

Не так давно вышла публичная бета-версия Microsoft Windows 8 Server с поддержкой анонсированной файловой системы ReFS (Resilient File System - отказоустойчивая файловая система), ранее известной под кодовым названием “Protogon”. Данная файловая система предлагается как альтернатива зарекомендовавшей себя годами файловой системе NTFS в сегменте систем хранения данных на базе продуктов Microsoft, с дальнейшей ее миграцией в область клиентских систем.

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

Windows Server 8 Beta

Вариант файловой системы, доступный в данной версии операционной системы, имеет поддержку кластеров данных размером только 64КБ и кластеров метаданных размером 16КБ. Пока не ясно, будет ли поддержка файловых систем ReFS с другим размером кластера: в настоящее время параметр «Размер кластера» при создании тома ReFS игнорируется и всегда принимается умалчиваемым. При форматировании ФС единственным доступным вариантом для выбора размера кластера является 64КБ. Он также является единственным упоминаемым в блогах разработчиков.

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

Архитектура файловой системы

Несмотря на частые упоминания о схожести ReFS и NTFS на высоком уровне, речь идет всего лишь о совместимости некоторых структур метаданных, как-то: «стандартная информация», «имя файла», совместимость по значениям некоторых флагов атрибутов и т.д. Дисковая реализация структур ReFS кардинально отличается от других файловых систем Microsoft.

Основными структурными элементами новой файловой системы являются B+-деревья. Все элементы структуры файловой системы представлены одноуровневыми (списками) или многоуровневыми B+-деревьями, что позволяет значительно масштабировать практически любой из элементов файловой системы. Наряду с реальной 64-битной нумерацией всех элементов системы это исключает появление “узких мест” при дальнейшем ее масштабировании.

Кроме корневой записи B+-дерева, все остальные записи имеют размер целого блока метаданных (в данном случае - 16КБ); промежуточные же (адресные) ноды имеют небольшой полный размер (порядка 60 байт). Поэтому, обычно, требуется небольшое количество уровней дерева для описания даже очень крупных структур, что достаточно благоприятно сказывается на общей производительности системы.

Основным структурным элементом файловой системы является «Каталог», представленный в виде B+-дерева, ключом в котором является номер объекта-папки. В отличие от других подобных файловых систем, файл в ReFS не является отдельным ключевым элементом «Каталога», а лишь существует в виде записи в содержащей его папке. Возможно, именно ввиду этой архитектурной особенности жесткие ссылки на ReFS не поддерживаются.

«Листьями Каталога» являются типизированные записи. Для объекта-папки существуют три основных типа записей: описатель каталога, индексная запись и описатель вложенного объекта. Все такие записи упакованы в виде отдельного B+-дерева, имеющего идентификатор папки; корень этого дерева является листом B+-дерева «Каталога», что позволяет упаковать в папку практически любое количество записей. На нижнем уровне в листах B+-дерева папки находится в первую очередь запись описателя каталога, содержащая основные сведенья о папке (как-то: имя, «стандартная информация», атрибут имени файла и т.д.). Структуры данных имеют много общего с принятыми в NTFS, хотя и имеют ряд отличий, основным из которых является отсутствие типизированного списка именованных атрибутов.

Далее в каталоге следуют так называемые индексные записи: короткие структуры, содержащие данные об элементах, содержащихся в папке. По сравнению с NTFS эти записи значительно короче, что в меньшей степени перегружает том метаданными. Последними следуют записи элементов каталога. Для папок эти элементы содержат имя паки, идентификатор папки в «Каталоге» и структуру «стандартной информации». Для файлов идентификатор отсутствует, но вместо этого структура содержит все основные данные о файле, включая корень B+-дерева фрагментов файла. Соответственно, файл может состоять практически из любого числа фрагментов.

На диске файлы располагаются в блоках размером 64КБ, хотя адресуются точно так же, как и блоки метаданных (кластерами размером 16КБ). «Резидентность» данных файла на ReFS не поддерживается, поэтому файл размером 1 байт на диске займет целый блок 64КБ, что ведет к значительной избыточности хранения на мелких файлах; с другой стороны это упрощает управление свободным пространством и выделение свободного места под новый файл осуществляется значительно быстрее.

Размер метаданных пустой файловой системы составляет порядка 0.1% от размера самой файловой системы (т.е. около 2ГБ на том 2ТБ). Некоторые основные метаданные дублируются для лучшей устойчивости от сбоев.

Защищенность от сбоев

Цели проверить стабильность существующей реализации ReFS не стояло. С точки зрения же архитектуры файловой системы она обладает всеми необходимыми инструментами для безопасного восстановления файлов даже после серьезного сбоя оборудования. Части структур метаданных содержат собственные идентификаторы, что позволяет проверить принадлежность структур; ссылки на метаданные содержат 64-бит контрольные суммы блоков, на которые производится ссылка, что позволяет оценить целостность прочитанного по ссылке блока.

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

Любое изменение структуры метаданных осуществляется в два этапа: сначала создается новая (измененная) копия метаданных в свободном дисковом пространстве, потом, в случае успеха, атомарной операцией обновления производится перевод ссылки со старой (неизмененной) на новую (измененную) область метаданных. Такая стратегия (Copy-on-Write (CoW) -копирование-при-записи) позволяет обойтись без журналирования, сохраняя автоматически целостность данных.

Подтверждение таких изменений на диске может не осуществляться достаточно долго, позволяя объединить несколько изменений состояния ФС в одно.

Данная схема не применяется для пользовательских данных, поэтому любые изменения содержимого файла пишутся непосредственно в файл. Удаление файла производится перестроением структуры метаданных (с использованием CoW), что сохраняет предыдущую версию блока метаданных на диске. Это делает восстановление удаленных файлов возможным до их перезаписи новыми пользовательскими данными.

Избыточность хранения данных

В данном случае речь идет о расходовании дискового пространства за счет схемы хранения данных. Для целей тестирования установленный Windows Server был скопирован на раздел ReFS размером 580ГБ. Размер метаданных на пустой ФС составлял около 0.73ГБ.

При копировании установленного Windows Server на раздел с ReFS избыточность хранения данных файлов выросла с 0.1% на NTFS почти до 30% на ReFS. При этом еще около 10% избыточности добавилось за счет метаданных. В итоге «пользовательские данные» размером 11ГБ (более 70 тыс. файлов) на NTFS с учетом метаданных заняли 11.3ГБ, тогда как на ReFS те же данные заняли 16.2ГБ; это означает, что избыточность хранения данных на ReFS составляет почти 50% для этого типа данных. При небольшом количестве файлов большого размера такого эффекта, естественно, не наблюдается.

Скорость работы

Ввиду того, что речь идет о Beta, замеров производительности ФС не проводилось. С точки же зрения архитектуры ФС можно сделать кое-какие выводы. При копировании более 70 тыс. файлов на ReFS, это создало B+-дерево «Каталога» размером в 4 уровня: «корень», промежуточный уровень 1, промежуточный уровень 2, «листья».

Таким образом, для поиска атрибутов папки (при условии кэширования корня дерева) требуется 3 чтения блоков по 16КБ. Для сравнения, на NTFS эта операция займет одно чтение размером 1-4КБ (при условии кэширования карты расположения $MFT).

Поиск атрибутов файла по папке и имени файла в папке (небольшая папка в несколько записей) на ReFS потребует те же 3 чтения. На NTFS же уже потребуется 2 чтения по 1КБ или 3-4 чтения (если запись о файле находится в нерезидентном атрибуте «индекс»). В паках большего размера количество чтений NTFS растет намного быстрее, чем количество чтений, требуемых для ReFS.

Точно так же дела обстоят и для содержимого файлов: там, где рост числа фрагментов файла на NTFS приводит к перебору длинных списков, разнесенных по разным фрагментам $MFT, на ReFS это осуществляется эффективным поиском по B+-дереву.

Выводы

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

СисДев Лабораториз будет следить за развитием данной файловой системы и планирует включение поддержки восстановления данных с этой файловой системы. Экспериментальная поддержка ReFS бета-версии Microsoft Windows 8 Server уже успешно реализована в продуктах UFS Explorer и доступна для закрытого бета-тестирования среди партнеров. Официальный релиз инструментов для восстановления удаленных файлов с ReFS, а также восстановления данных после повреждения файловой системы в результате сбоев оборудования, планируется чуть ранее или одновременно с выходом релиза Microsoft Windows 8 Server с поддержкой ReFS.

Версия от 16.03.2012.
По материалам СисДев Лабораториз

Перепечатка или цитирование разрешены при условии сохранения ссылки на перво

Лучшие статьи по теме