Быстрейшая файловая система linux

Тестирование двенадцати файловых систем в Linux

реклама

Введение

В прошлый раз мы тестировали производительность файловой системы ReFS в Windows 10. Там мы затронули некоторые ФС из мира Linux, которые показали достаточно вялые результаты, поскольку из-за ограничений Windows чтение и запись были недостаточно хорошо реализованы. На сей раз подобная несправедливость будет устранена, теперь роли меняются, и файловые системы NTFS, FAT32 и exFAT уже сами становятся гостями. Методика тестирования была усовершенствована, теперь все операции выполняются специальным скриптом, с точностью до миллисекунды замеряющим время, затраченное на определенную операцию. Кроме того был изменен набор данных, вместо поочередного копирования групп различных файлов проводится копирование сразу всех файлов разных типов. Также тестирование теперь не ограничивается только жестким диском, здесь были задействованы более актуальные в настоящее время твердотельные и flash накопители. На каждом из них для размещения тестовых данных был создан раздел объемом 4 Гб, вторым устройством для перемещения данных выступал созданный в оперативной памяти раздел объемом 2304 Мб с файловой системой TMPFS. Поскольку flash-память имеет ограниченное количество циклов перезаписи, то в оценке производительности на данном типе носителей участвовали только нежурналируемые файловые системы.

реклама

Тестовая система:

  • Процессор: Xeon E5440 @ 3.4 ГГц
  • GIGABYTE GA-P35-DS3L
  • Оперативная память: 3584 МБ DDR2-800
  • Жесткий диск: Seagate Barracuda 7200.10 3250410AS 250 ГБ
  • Твердотельный накопитель: SanDisk SDSSDHII-120G-G25 120 ГБ
  • MicroSD карта SanDisk Ultra 16 Гб UHS-I, поключенная с помощью адаптера MXT
  • Ubuntu 16.04 x64 с последними обновлениями

Набор данных:

  • 100 MP3 файлов — 681,3 Мб
  • 880 JPEG изображений 268,8 Мб
  • 4 видеоролика в формате MP4 — 492,7 Мб
  • 1 ISO образ — 583 Мб
  • Суммарный объем:

реклама

Краткая характеристика участников тестирования:

EXT2 — расширенная версия первой файловой системы EXT для ОС на ядре Linux.

EXT3 — журналируемая EXT2.

реклама

EXT4 — значительно расширенная по функционалу EXT3.

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

F2FS — файловая система от Samsung, предназначенная для использования на flash-памяти.

ReiserFS — журналируемая ФС от компании Namesys, позволяющая изменять свой размер на лету без размонтирования.

XFS — высокопроизводительная 64-битная журналируемая файловая система, созданная компанией Silicon Graphics.

JFS — 64-битная журналируемая ФС, разработанная IBM с прицелом на высокую производительность, надёжность и масштабируемость для многопроцессорных компьютеров.

HFS+ — файловая система, использующаяся в macOS.

NTFS — ФС для Windows NT, выросшая из HPFS, совместной разработки IBM и Microsoft для OS/2.

FAT32 — усовершенствованная версия файловой системы FAT для DOS и Windows.

exFAT — расширенная версия FAT32, предназначенная для flash-накопителей.

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

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

Новая файловая система F2FS демонстрирует отличный результат, опережая своих оппонентов. За ней следуют продвинутые журналируемые ФС, в основном использующиеся в NIX системах. Гости из Windows, а также устаревшие EXT2 и EXT3 заметно отстают.

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

Разрыв между первым и замыкающим участниками заметно вырос. На сей раз в лидерах созданная профессионалами Sun Microsystems система XFS, которая показала результат близкий к максимальной пропускной способности интерфейса SATA-II. BTRFS, все еще считающая в некоторых аспектах не совсем стабильной, находится в нижней части списка. Работающая в пользовательском пространстве с помощью специального драйвера, NTFS показала почти в четверо более низкий результат, чем XFS.

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

Ситуация похожа на ту, которая была продемонстрирована в первом тесте. Но тут FAT32 поднялась сразу на семь позиций, а на ее место переехала BTRFS. Устаревшие EXT2 и EXT3 снова замыкают список.

Теперь очередь за SSD.

Видно, что разница сократилась, поскольку и твердотельный накопитель и оперативная память довольно быстрые устройства, и одно лишь это устраняет различные недостатки, присущие каждой их файловых систем. XFS выдала просто ошеломительный результат, практически уперевшись в пропускную способность SATA-II. Более усложненная BTRFS на второй позиции. Несмотря на прослойку в виде FUSE, NTFS заняла довольно почетное место.

Настала очередь flash-накопителей.

exFAT обошла F2FS в тесте записи примерно на 18%. EXT2, как и в предыдущих испытаниях, плетется в конце.

Ну и, наконец, чтение с flash-памяти.

FAT32 показывает, кто здесь царь. Несмотря на почтенный возраст, она и не собирается сдавать своих позиций. К сожалению максимальный размер файла в FAT32 ограничен четырьмя гигабайтами, что совершенно не подходит для тех же фильмов в высоком качестве. Однако, ее замена в лице exFAT отменяет данный изъян ценой всего лишь десятипроцентной потери производительности.

И ради интереса был проведен еще один тест с участием только RAM-дисков (копирование ISO-образа).

Заключение

Мир Linux открывает перед пользователями Windows множество граней, одной из которых является наличие гораздо большего количества различных файловых систем. Каждая из них имеет свои достоинства и недостатки, кто-то силен в одних ситуациях, кто-то в других. И в проведенном тестировании мы попытались выявить данное распределение сил.

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

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

Источник

Какую файловую систему следует использовать Ext4 или XFS

Пользователи, которые работают в системе Linux, не обращают внимание на базовую файловую систему. Но во время установки Linux большинство пользователей используют файловую систему по умолчанию. И при этом не изучая другие возможные файловые системы. Для Windows все намного проще, поскольку NTFS является доминирующей файловой системой. В Linux в вашем распоряжении множество файловых систем. К ним относятся Ext4, XFS, ZFS и BTRFS.

Наиболее широко используемыми файловыми системами являются Ext4 и XFS. Последняя является файловой системой по умолчанию в дистрибутивах на основе RHEL. А Ext4 является стандартной файловой системой в дистрибутивах Debian и Ubuntu. При выборе файловой системы необходимо учитывать такие факторы, как масштабируемость, стабильность и целостность данных.

В этой статье мы рассмотрим файловые системы Ext4 и XFS и попытаемся понять различия между ними.

Файловая система Ext4

Начнем с файловой системы Ext4 (Расширенная Файловая Система) является четвертым поколением семейства файловых систем Ext, происхождение которого можно проследить с операционной системы Minix. Которая была впервые представлена в 1987 году. Файловая система Ext является первой файловой системой, лежащей в основе ядра Linux. Когда она была представлена в 1992 году. Файловая система Ext4 появилась в 2008 году с Linux 2.6.28. сменив своего предшественника ext3.

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

Основные характеристики включают в себя:

  • Поддержка больших размеров файлов — Ext4 поддерживает размер одного файла до 16 КБ ( Тебибайт), в то время как XFS поддерживает максимальный размер файла до 8 эксбибайт.
  • Оптимизация задержек для более быстрого распределения файлов.
  • Обратная совместимость — Еще одним преимуществом использования файловой системы Ext4 является ее обратная совместимость с системами Ext3 и Ext2. Это повышает производительность и гибкость FS. Так как некоторые функции Ext4 могут быть реализованы в файловых системах Ext3 и Ext2. И так же файловые системы Ext3 и Ext2 могут быть смонтированы как Ext4.
  • Улучшенное распределение — блоки хранения более эффективно распределяются файловой системой Ext4 перед записью на диск. Это значительно повышает производительность чтения и записи.
  • Контрольные суммы журнала — Файловая система Ext4 использует параметр контрольной суммы для минимизации риска повреждения файлов. Опция контрольной суммы выполняет частые проверки для выявления ошибок в объеме блока. Таким образом, сокращается время ведения журнала и повышается производительность.
  • Более быстрая проверка файловой системы — В дополнение к контрольным суммам журнала, Ext4 обеспечивает более быструю проверку файловой системы. Например, команда fsckбудет выполняться быстрее и выдаст результаты за более короткое время. По сравнению с более ранними версиями, такими как Ext3 и Ext2.
  • Улучшенные временные метки — в Ext4 реализованы временные метки, измеряемые в наносекундах, что является улучшением по сравнению с детализацией временных меток на основе секунд. Так как метки в секундах считаются недостаточными. Кроме того к отметке времени было добавлено еще 408 лет, чтобы преодолеть установленный лимит 2038 года.
  • Неограниченное количество подкаталогов — Файловая система Ext4 не ограничивает количество подкаталогов, которые могут быть созданы в одном каталоге, за исключением самого размера каталога. В Ext3 каталог может содержать не более 32 000 подкаталогов. Ext4 представила функцию HTreeindices для увеличения количества записей, которые могут храниться в каталоге.
  • Прозрачное шифрование — Поддержка прозрачного шифрования была реализована для файловой системы Ext4 в ядре Linux 4.1.

Файловая система XFS

Система XFS разработана компанией Silicon Graphics в 1993 году. Файловая система XFS является стабильной и высокопроизводительной 64-разрядной системой ведения журнала. XFS была создана для поддержки больших файловых систем объемом до 18 экзабайт и очень больших файлов. Данная файловая система предназначена для систем с большими дисковыми массивами. Особенно подойдет тем кто нуждаются в хранении больших файлов.

XFS широко известна своей высокой масштабируемостью потоков ввода-вывода и высокой производительностью при обработке больших файлов.

Файловая система XFS является файловой системой по умолчанию в операционных системах RHEL, CentOS и других дистрибутивах таких как Oracle Linux, Rocky Linux и AlmaLinux.

Основные функции файловой системы XFS:

  • Поддержка файловой системы большего размера — XfS поддерживает размер файловой системы до 1PiB, в то время как Ext4 поддерживает до 50TiB. Поддерживаемый размер файловой системы может варьироваться в зависимости от версий дистрибутива Linux.
  • Отложенное распределение — Используйте методы отложенной оценки для распределения файлов. Выделение блоков происходит только тогда когда данные окончательно сбрасываются на диск. Это помогает уменьшить фрагментацию и повысить производительность.
  • Сложные алгоритмы упреждающего считывания метаданных
  • Ведение журнала метаданных -это функция, которая гарантирует согласованность файловой системы в случае внезапной потери питания или сбоя системы.
  • Поддержка расширенных атрибутов — Это позволяет системе связать несколько дополнительных пар имя/значение для каждого файла.
  • Ведение журнала квот — данная функция устраняет необходимость в длительных проверках согласованности квот после сбоя системы.
  • Дефрагментация и расширение — вы можете дефрагментировать и увеличивать файловую систему во время ее работы.
  • Масштабируемость хранилища — Файловая система XFS делает все возможное для поддержки больших файловых систем, больших каталогов и огромного объема файлов емкостью до эксабайт.
  • Управление дисковым пространством — XFS также обеспечивает масштабируемость для эффективного управления дисковым пространством благодаря индексации B-дерева.

Заключение

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

Это был обзор файловых систем XFS и Ext. Мы подробно описали преимущества, которые предлагает каждая файловая система. Зная эту информацию, вы можете принять решение, какую файловую систему выбрать для своей операционной системы.

Источник

Читайте также:  Слетели системные шрифты windows
Оцените статью