Ну и что тут подробного? То же самое что в доках и в mail-list'е по этому делу. Хотя бы написали какие грабли могут быть, чем черевато. ИМХО полезно только для тех кто по английски ни бум-бум, и то спорный вопрос, а то какой нибудь такой горе админ решит прикрутить к серверу и всё, появится ещё один красноглазый который будет кричать BSD suxx, у меня всё упало.
Тут даже не столько UFS, сколько возможность GEOM делать журналирование (почти нормальное журналирование) для любой fs. UFS от этого на мой взгляд ни холодно ни жарко.
Кто нибудь знает как в линухе это реализовано? Кодом под каждую конкретную фс, или ещё как?
Ох ты блин, а бсдшники не знают, вот засада. Вообще если отталкиваться от этого изречения, то и вся их GEOM система тоже туфта и не должна работать (man geom).
Да кстати, новость про журналирвание сильно "обсосали" на opennet.ru, и вот как раз цитата из оригинального письма:
GJournal was designed to *journal GEOM providers*, so it actually works *below* file system layer, but it *has hooks* which allow to work with file systems.
Т.е. журналируем иммено абстрактную фс. Вроде так.
> Кто нибудь знает как в линухе это реализовано? Кодом под каждую конкретную фс, или ещё как?
Насколько мн еизвестно - каждая ФС обеспечивает журналирвоание сама. Ядро предоставляет только стандартное API, реализация которого ложится на плечи ФС.
>Когда в оригинальном руководстве сказано именно пересобрать мир.
Автор прав! Зачем пересобирать весь мир, когда изменение касаются только созданных директорий? Это всеравно что после обновления при csup'е утилиты /bin/cp пересобирать весь мир, когда изменения затронули только cp.
"мужики-то не знают" - ага, мужики точно не знают ;)
для высокопроизводительных файл серверов в сан пользуют ТОЧНО не UFS :)
а веритас например или сейчас уже zfs...
А почему я должен что то сравнивать если ты говоришь нам что "UFS уже ничего не поможет", это ты должен сравнить и доказать.
И да, что именно такое плохое в архитектуре UFS?
> мужики-то не знают. и в sun почему-то используют именно ее -- для высокопроизводительных файл-серверов, например.
ну справедливости ради стоит заметить что в solaris всё таки сильно отличающийся от бсдишного UFS с кучей различных фич, в т.ч. нормальный logging, а для высокопроизводительных файл-серверов есть более кошерная zfs ;)
В общем всё, "UFS уже ничего не поможет", всем БЗДшникам стреляться и вешаться, они оказывается нормально работать не могут, потому что у них всё тормозззззииииит.
ЗЫ
Блин, что ж выбрать то? И вешаться не хочется и стреляться тоже не особо.
>Тут даже не столько UFS, сколько возможность GEOM делать журналирование (почти нормальное журналирование) для любой fs. UFS от этого на мой взгляд ни холодно ни жарко. Кто нибудь знает как в линухе это реализовано? Кодом под каждую конкретную фс, или ещё как?
Журнал реализуется через стандартный JBD (хотя насколько я помню, reiser делает сам). GEOM journal это практически один в один JBD.
>Да кстати, новость про журналирвание сильно "обсосали" на opennet.ru, и вот как раз цитата из оригинального письма: GJournal was designed to *journal GEOM providers*, so it actually works *below* file system layer, but it *has hooks* which allow to work with file systems.
>Т.е. журналируем иммено абстрактную фс. Вроде так.
хм. в соседнем треде пролетала ссылка на http://www.unixtech.ru/analytics/UFS_VxFS_QFS_ZFS_BenchmarkResults.pdf, где показывалось, что под очень сильной нагрузкой и zfs, и veritas заметно уступают солярному ufs. жду комментариев по тому, что и как авторы бенчмарка неправильно меряли.
> а вы видели этот UFS_DIRHASH изнутри?
Можете предложить лучшую идею/реализацию?
[-- CUT --]
/*
* Dirhash uses a score mechanism to achieve a hybrid between a
* least-recently-used and a least-often-used algorithm for entry
* recycling. The score is incremented when a directory is used, and
* decremented when the directory is a candidate for recycling. When
* the score reaches zero, the hash is recycled. Hashes are linked
* together on a TAILQ list, and hashes with higher scores filter
* towards the tail (most recently used) end of the list.
*
* New hash entries are given an inital score of DH_SCOREINIT and are
* placed at the most-recently-used end of the list. This helps a lot
* in the worst-case case scenario where every directory access is
* to a directory that is not hashed (i.e. the working set of hash
* candidates is much larger than the configured memry limit). In this
* case it limits the number of hash builds to 1/DH_SCOREINIT of the
* number of accesses.
*/
[-- CUT --]
А для всех, кто не понимает выгод GEOM можно посоветовать прочитать man по паре ссылок:
http://www.freebsd.org/cgi/man.cgi?query=graid3http://www.freebsd.org/cgi/man.cgi?query=ggatedhttp://www.freebsd.org/cgi/man.cgi?query=ggatec
После прочтения - подумать над применением.
XFS в принципе не может использовать - там не блочное журналирование. а reiserfs не использует, так как ханс - неадекватный тим, не умеющий работать в команде. ocfs2 использует и некоторые проприетарные fs.
>btw, кто смотрел плотно ocfs2? я пока даже не начинаю, пока ядро с ним даже в debian testing нет...
Oracle даже на странице этой ФС не выложил никаких тестов производительности, но зато заявлены интересные кластерные возможности распределенного хранения данных.