Тестируем ext4
Этот рассказ я хочу начать со старого одесского анекдота — интерпретируемого применительно к случаю, соответственно (ну и с исключением той лексики, которую принято называть обсценной):
Вi думаете, Одессу брали регулярные части Красной Армии?
Фиг с маслом, пьяная матросня...
...
Они протестировали ext2 — вi думаете, она им понравилась?
Фиг с маслом, они сказали, что она неустойчива к сбоям.
Они протестировали ext3 — вi думаете, она им понравилась?
Фиг с маслом, они сказали, что она непредсказуема.
Они протестировали XFS, JFS и reiserfs — вi думаете, они им понравились?
Фиг с маслом, они нашли в них кучу недостатков.
Они протестировали ZFS и btrfs — вi думаете, они им понравились?
Фиг с маслом, они сказали, что первая не будет работать в Линуксе, а вторая экспериментальна.
И вi думаете, на этом всё кончилось?
Фиг с маслом, они сказали, что будут тестировать ext4!
И тестируют...
Когда-то, во дни первого приобщения к Linux'у, файловая система его, тогда единственная, ext2, произвела на меня совершенно неизгладимое впечатление: все варианты FAT, Mac'овская HFS, ранние версии NTFS по сравнению с ней выглядели жалким убожеством, и даже казавшаяся несравненной HPFS от умиравшей в то время OS/2 меркла на её фоне. Особенно рельефно достоинства ext2 проступали на фоне UFS — соплеменной, но более архаичной, хотя и усовершенствованной за счёт механизма SoftUpdates. Конечно, аварийный останов системы мог иметь для неё тяжкие последствия — но от этого вполне страховал бесперебойник.
Потом начались разговоры о журналируемых файловых системах — сначала платонические, а потом, где-то с первого года нашего тысячелетия, и вполне практические. И ext2 тихо отошла в тень, единственным её местопребыванием остался, пожалуй, /boot, если он располагался на самостоятельном разделе. Хотя все тесты, начиная с первого и кончая квази-последним, показывали её несравненное быстродействие по большинству показателей не только в сравнении с эпонимом журналируемых систем, JFS, или её собственным журналируемым отпрыском, ext3, но и с reiserfs, державшей в этом отношении пальму первенства среди всех файловых гиен и шакалов.
К слову сказать, собственно ext3, то есть ext2 с прикрученным к ней пассатижами журналом, в плане быстродействия файловых операций особыми достоинствами вообще не блистала. Тем более, что изменение режима журналирования в ней давало совершенно непредсказуемый эффект в отношении быстродействия. И вообще, главным её достоинством была совместимость с ext2 — как с точки зрения преобразования одной в другую, так и в отношении инструментария для манипулирования ими. Во всех остальных отношениях она проигрывала быстрой reiserfs или XFS, способной эффективно работать с очень большими разделами.
И потому работы по кардинальному совершенствованию линии ext велись на протяжении длительного периода — впервые поддержка очередного её варианта, получившего имя ext4, появилась в 2006 году. Ныне, в ядрах 2.6.28 и выше, она стала штатной опцией, хотя и сохраняющей статус экспериментальной.
Но тем временем приспели более иные файловые системы, совмещавшие в себе как файловые системы в собственном смысле слова, так и системы управления томами — сначала ZFS, а затем и btrfs. Если применение первой как нативной для Linux оказалось невозможным по лицензионным соображениям (она используется только через механизм FUSE, что лишает её большинства преимуществ), то вторая сразу же по включении её в ядро продемонстрировала замечательные качества — как с точки зрения простоты использования, так и быстродействия.
На таком фоне ext4, остающаяся чисто файловой системой, большого интереса у меня не вызывала. И, несмотря на близкие к восторгу описания, ничего особо выдающегося я от неё не ждал. Тем не менее, в силу ряда независимых причин устанавливая очередную версию *buntu (9.04 в её Xubuntu-модификации), где эта файловая система предлагается в качестве одной из штатных, хотя и не умолчальной, я решил с нею ознакомиться.
Тем более, что развитие btrfs после победных реляций конца прошлого — начала текущего годов несколько застопорилось, а надёжность её в существующем виде продолжала внушать сомнения. Да и будущее её, после того, как факт покупки Sun'а Oracle'м можно считать (почти) свершившимся, стало не столь ясным: ведь будущему новому хозяину ZFS ничего не стоит изменить лицензию последней для отправки в плавание по безбрежному GPL-океану...
В общем, долго сказка сказывается, да быстро дело делается: в ходе установки Xubuntu создал я специальный раздел /home/test с файловой системой ext4, каковую и подверг серии издевательств, описанных ранее. Тех самых, которым я подвергал все файловые системы, с которыми мне приходилось иметь дело, включая btrfs. На железе, описанном здесь.
Так что бодро рапортую о результатах — материалы для сравнения взяты из указанных выше источников — про последнее тестирование и про btrfs (данные по всякого рода программным RAID'ам и двухдисковым конфигурациям исключены единообразия ради).
Для начала — голимая цифирь:
Операция |
Копирование |
Удаление |
Объект |
Музыка |
Portage |
Avi |
Iso |
Portage |
ext4 |
00:10 |
00:15 |
01:44 |
00:19 |
00:04 |
btrfs |
00:07 |
00:24 |
01:25 |
00:17 |
00:22 |
ZFS |
00:12 |
00:29 |
02:30 |
00:21 |
00:16 |
ext2 |
00:08 |
01:28 |
03:09 |
00:31 |
00:18 |
ext3 |
00:06 |
01:41 |
02:36 |
00:25 |
00:17 |
reiser |
00:07 |
01:29 |
02:37 |
00:25 |
00:04 |
Которую можно проиллюстрировать. Например, копирование набора flac-файлов (357 Мбайт):
Казалось бы, существенно отстаёт ext4 — вместе с ZFS, кстати, которая отстаёт ещё больше. Однако глянем левее, на абсолютные значения — и увидим, что результаты, можно считать, равны (и не потому, что играли одни...ну сами знаете кто).
Едем дальше, видим дерево портежей (а это бессчётное количество мелких, от менее чем килобайт, файлов, суммарным объемом, зато, более 240 Мбайт) и... копируем его:
После чего с удивлением убеждаемся, что наша героиня не просто идёт нога в ногу с лучшими из лучших (ZFS и btrfs) — но даже их чуть-чуть, но опережает.
Тут пред нами вырастает гора — avi-фильм в 2,7 Гбайт. Преодолев его посредством копирования, сравниваем показатели:
За ext4 — не рекорд, оранжевая майка лидера одета на btrfs, — но результат существенно лучший, чем у всех остальных участников гонки, ибо даже ZFS остаётся во втором эшелоне.
Завершающий барьер — iso-образ в 586 Мбайт — ext4 преодолевает легко, занимая почётное 2-е место (после опять же btrfs):
Что же, состязание окончено, забудьте? Не совсем — за спиной остались угли сгоревших мостов, в виде груды файлов. Правила хорошего тона требуют ликвидировать следы своей жизнедеятельности. С этой задачей все участники соревнования справляются на ура — только вот зола от сожженных портежей убирается ими довольно долго:
И тут, дорогие телезрители и радиослушатели, внимание: у безраздельного чемпиона по приборке, reiserf, впервые за все годы проведения наших товарищеских раундов, появился равный соперник. Нет, это не Володя Лямин, это файловая система ext4. Ноздря в ноздрю они сносят с винта последние осколки дерева портежей...
Венков и медалей присуждать не будем — это обыкновенная товарищеская встреча, не имеющая серьёзного спортивного значения. Но выводы сделаем:
- ext4 — обыкновенная файловая система, и только; и это, в сравнении с ZFS и btrfs, минус;
- зато она не требует ни отдельного инструментария, ни каких-либо непривычных манипуляций; и это, безусловно, плюс;
- по быстродействию он, безусловно, принадлежит не к лучшим из худших — даже болонка мадам Бонасье согласится, что это плюс не меньший;
- и самое главное — она есть; тогда как ZFS нет, а btrfs то ли есть, то ли нет; и тут уж даже любимый кот господина кардинала вынужден будет признать, что живой пёс лучше льва неизвестно живого ли.
Остальные выводы предоставляются читателю.
Автор: Алексей Федорчук
Источник: www.alv.me
Добавить закладку на материал:
|