Журналирование в подробностях Денис Колисниченко Хакер, номер #073, стр. 073-096-5 На этом разделе нет ничего важного – режим writeback /dev/hda3 /opt ext3 data=writeback 1 0 После изменения файла /etc/fstab нужно заново смонтировать файловые системы или перезагрузить компьютер. Кто быстрее? Тестировать производительность рассматриваемых файловых систем сам я не стал - в Сети уж очень много проведенных тестов, нужно только найти подходящий. Как раз только установил панель поиска Google Toolbar, и выпала возможность испытать ее. Ввожу Ext2, Ext3, ReiserFS, XFS and JFS benchmarks, на что Google вернул довольно много ссылок, одна из них - oregonstate.edu/~kveton/fs/page1.php. На этой страничке описывается тестирование ext2, ext3 во всех режимах журнала, JFS и ReiserFS в разных режимах для больших и маленьких файлов. Жаль, что тестировалось все на ядрах 2.4 и 2.5, а не 2.4 и 2.6, поэтому комментировать буду только ядро 2.4 (2.5 установлено далеко не у всех). Ориентироваться будем на загрузку CPU, ведь это решающий фактор при определении быстродействия системы - чем выше загрузка CPU, тем вероятнее система будет тормозить. При условии последовательного блочного вывода (Sequential Output, Block) минимальную нагрузку на процессор дает ext2 (13%), но поскольку она не журналируемая, то ее к особому вниманию не принимаем. Среди журналируемых файловых систем лидером по самой низкой загрузке CPU стала JFS (14%). При минимальной загрузке процессора JFS еще и достаточно быстра - 47178 Кб/с. По быстродействию в этом режиме она лидер (ext2 мы договорились не считать). На втором месте по быстродействию - ReiserFS - 46640 Кб/с, также эта файловая система на втором месте и по загрузке процессора - 24%. Ext3 досталось третье место. Однако не спеши с умозаключениями. Работа файловой системы не ограничивается последовательным блочным выводом, есть еще и другие режимы. К сожалению, размер статьи не позволяет прокомментировать все режимы, поэтому сразу перейдем к маленьким файлам. Будем рассматривать последовательный блочный ввод. По загрузке процессора и по производительности картина та же: на первом месте JFS, затем ReiserFS, потом ext3. Не могу удержаться, чтобы не прокомментировать результаты для ядра 2.5.65 - это уже почти 2.6. Для работы с большими файлами я бы выбрал JFS. По производительности она лидирует, давая 49510 Кб/с, а по загрузке процессора не сильно отличается от XFS и все той же ext2 - 14% против 13%. При работе с маленькими файлами опять лидер JFS: 49343 Кб/с и 14% против 46727 Кб/с и 13% у XFS. Осталось добавить, что тестирование проводилось с помощью Bonnie++. Скорее всего, другие программы покажут иные результаты. Дополнительные условия и конфигурацию тестируемой системы можно узнать по адресу: http://oregonstate.edu/~kveton/fs/page1.php. WWW http://oss.sgi.com/projects/xfs www.coker.com.au/bonnie++ www.namesys.com/v4/v4.html www.zip.com.au/~akpm/linux/ext3 www-124.ibm.com/developerworks/oss/jfs www.redhat.com/support/wpapers/redhat/ext3 http://batleth.sapienti-sat.org/projects/FAQs/ext3-faq.html |