LINUX.ORG.RU
ФорумAdmin

ФС для множества мелких файлов


0

1

Есть проект, в котором используются данные в виде множества (около 100 000) мелких файлов (картинки и текстовые файлики, размер несколько килобайтов). Файлы лежат в иерархии, проблем с большими каталогами нет. Файлы лежат в read-only виде и никак не меняются, очень желательно, чтобы ОС максимально всё закешировала при первом доступе и всё работало максимально быстро (если хватает памяти).

Есть ли смысл использовать что-то, отличное от ext4 в данных условиях? Есть ли какие то нюансы? Пока планирую отключить atime.

★★★★★

100 тысяч это не количество, при котором надо заморачиваться.

В почти любом дистрибутиве кол-во файлов в среднем как раз 100 тысяч и ничего :)

Вот если больше миллиона... У меня до недавнего времени вертелся сервер почтовый, который хранил около 1.5 миллионов писем в maildir, ФС была рейзер, проблем не наблюдал.

blind_oracle ★★★★★
()
Ответ на: комментарий от blind_oracle

ЗЫ: На экст4 смущает

Максимальный размер тома: 1 эксбибайт (ограничен до 16 тебибайт из-за ограничений e2fsprogs)

Это правда? 16 тер и всё? А то я тут думаю бэкап сервер делать, там будет где-то 70-80Тб, видать придётся XFS юзать.

blind_oracle ★★★★★
()

Есть ли смысл использовать что-то, отличное от ext4 в данных условиях?

Нет.

Gotf ★★★
()
Ответ на: комментарий от blind_oracle

Больше 16 тб на 1 файл? Зачем так жить? В любом случае будет разумно побить на блоки по 16тб или меньше в зависимости от пропускной способности.

wakuwaku ★★★★
()
Последнее исправление: wakuwaku (всего исправлений: 3)
Ответ на: комментарий от blind_oracle

The ext4 filesystem can support volumes with sizes up to 1 exbibyte (EiB) and files with sizes up to 16 tebibytes (TiB).[9] However, Red Hat recommends using XFS instead of ext4 for volumes larger than 100 TB.[10][11]

плюс, если мне не изменяет память, на больших объёмах нужно включить какие-то опции в ядре.

wakuwaku ★★★★
()

Есть ли смысл использовать что-то, отличное от ext4 в данных условиях?

ИМХО нет. Только inode заготовь сколько надо.

emulek
()

read-only

SquashFS или zip, если с рутовыми правами напряг.

const86 ★★★★★
()
Ответ на: комментарий от madcore

В случае tail система начинает периодически фризится. Правда, потери данных я не замечал. Но, если не враг себе, - notail.

Kroz ★★★★★
()

(около 100 000) мелких файлов (картинки и текстовые файлики, размер несколько килобайтов

это же всего 0.5-1 ГБ

Файлы лежат в read-only

Копируй в tmpfs из tar.gz архива, например и пользуй по-максимуму

sdio ★★★★★
()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от sdio

это же всего 0.5-1 ГБ

Да, где то так.

Копируй в tmpfs из tar.gz архива, например и пользуй по-максимуму

А это имеет смысл? Была мысль попробовать, но это лишний гемор с загрузочными скриптами, временем загрузки сервера (гигабайт с харда вычитать ещё надо), забитой оперативкой данными, большинство из которых не пригодится (файловый кеш поумней будет). Да и сервер - впска, а там оперативка денег стоит, за копейки не засунешь 16 гигов.

Legioner ★★★★★
() автор топика
Ответ на: комментарий от wakuwaku

Значит русская педивикия отстала от жизни.

Хотя на кернел.орг пишут:

The code to create file systems bigger than 16 TiB is, at the time of writing this article, not in any stable release of e2fsprogs. It will be in future releases.
(c) https://ext4.wiki.kernel.org/index.php/Ext4_Howto

А редхат вообще больше 16Тб на EXT4 не поддерживает, так что откуда они взяли «Red Hat recommends» я не знаю:

Maximum filesystem size: RHEL6 - 16TB, RHEL7 - 50TB
(c) https://access.redhat.com/site/solutions/1532

blind_oracle ★★★★★
()
Ответ на: комментарий от Legioner

Да и сервер - впска, а там оперативка денег стоит

Граничные условия ты не озвучил в сообщении. А так 1Гб оперативки пустяк, ради быстрой работы.

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.