Tiit Riisalo

ReiserFS — журналируемая файловая система, разработанная специально для Linux компанией Namesys под руководством Ханса Райзера; этим наименованием обозначают третью версию семейства файловых систем Райзера (тогда как четвёртую называют Reiser4).

Поддерживается только под Linux. Стала первой журналируемой файловой системой, включённой в ядро Linux (в версии 2.4.1); является основной файловой системой в дистрибутивах Elive, Xandros, Linspire, GoboLinux, Yoper Linux, ранее была основной в SuSE (Enterprise, до октября 2006), Ubuntu, Gentoo, Archlinux, Slackware, также рекомендуется в Calculate Linux[3]. Версии ReiserFS, включённые в ядро Linux старых версий (младше версии 2.4.10), признаны нестабильными компанией Namesys и не рекомендованы для промышленного использования, особенно в связке с NFS.

Для создания структур файловой системы используется команда mkreiserfs.

Система поддерживает конфигурируемое блочное перераспределение — возможность упаковки нескольких небольших файлов в один блок во избежание фрагментации и потери дискового пространства. Из-за сильной потери производительности Namesys рекомендует отключить эту возможность на чувствительных к ресурсам машинах. Также реализовано несколько режимов журналирования (можно подвергать журналированию только метаданные либо все данные — аналогично Ext3). Важной особенностью системы является возможность изменения размера файловой системы «на лету», без размонтирования тома.

Среди недостатков файловой системы — вероятность повреждения файловой системы в целом при сильно повреждённых метаданных и неэффективность единственного известного способа дефрагментации, требующего снятия полного дампа и последующего восстановления (в Reiser4 реализован переупаковщик, решающий эту проблему[4]).

Реализована поддержка параллельно масштабируемых логических томов, позволяющая эффективно распределять данные по логическому тому. Возможности добавить небольшое высокопроизводительное блочное устройство (напр. NVRAM), называемое прокси-диском, к относительно большому логическому тому, скомпонованному из медленных бюджетных дисков. При этом будет создаваться впечатление, что весь том скомпонован из таких же дорогостоящих высокопроизводительных устройств, как и «прокси-диск». В основу реализованного метода легло простое наблюдение, что на практике запись на диск не ведётся постоянно, а кривая нагрузки ввода-вывода имеет форму пиков. В промежутке между такими «пиками» всегда имеется возможность сбросить данные с прокси-диска, переписав в фоновом режиме все данные (или же только часть) в основное, «медленное» хранилище. Таким образом, прокси-диск всегда готов к приёму новой порции данных. Изначально данная техника известная как Burst Buffers[5].

Примечания

  1. http://www.namesys.com/X0reiserfs.html#nodelayout (копия в Internet Archive)
  2. 1 2 3 http://www.namesys.com/faq.html (копия в Internet Archive)
  3. Calculate Linux:Разбиение диска. Дата обращения: 2 октября 2010. Архивировано 19 февраля 2011 года.
  4. Пешеходов А. Архитектура и реализация reiser4. Дата обращения: 19 мая 2012. Архивировано 21 сентября 2014 года.
  5. В Reiser5 анонсирована поддержка Burst Buffers (Data Tiering). www.opennet.ru. Дата обращения: 28 мая 2020. Архивировано 3 июня 2020 года.

Ссылки

No tags for this post.