Назад | Перейти на главную страницу

ФС много файлов небольшого размера, в основном читает?

Мне нужно направление, потому что все блоги / скамейки, кажется, противоречат друг другу.

Цель:

Имея много маленьких файлов на FS в виде дерева каталогов, аналогичных AB / CD / EF ... Две группы размеров: G1: 10-20 кБ G2: 100-500 кБ

Мне нужен действительно быстрый доступ к серверу с nginx.

Противопоказания

Удаление или создание perf не имеет значения. В крайнем случае, это может занять минуту, мне все равно. Чтение / доступ должны быть быстрыми <-> nginx. Файлы копируются на разные диски при их создании, поэтому рейд не используется. Просто товар. Создание динамического inode или подобное. Надежность не является серьезной проблемой, так как дублируются на 3 разных серверах.

Контекст и противоречия

Я читал, что XFS подходит для высокопроизводительных почтовых серверов с большим количеством мелких файлов. Другие говорят, что XFS отстой при обработке небольших файлов, а EXT4 лучше.

И это противоречит всему Интернету.

Проблема

В целом проблема заключается в размещении inode. Большие таблицы inode тратят впустую пространство. Установите его слишком слабым, и вы обречены: сотрите и заново создайте раздел (ни в коем случае этого не может быть).

Для меня это ловушка, которая может остановить меня от добавления новых файлов, даже если место еще доступно. Вот почему я хочу переключиться на что-то другое.

И из-за очень динамичного характера и непредсказуемого количества файлов там кажется, что я застрял. Следовательно, необходимо ваше мнение.

btrfs считается не готовым к производству. Остальные кажутся выходящими (надежность)

Какую ФС использовать в таком случае?

ZFS и XFS выделяют inodes динамично так соответствовал бы потребности. Я бы не стал ставить на ReiserFS.

И это противоречит всему Интернету.

Но вы рассчитываете получить здесь последовательные ответы?

Единственная конкретная рекомендация, которую я бы сделал, - это забыть о ZFS - если вы не работаете в Solaris (где он много смысла).

Кроме того, то, как вы настраиваете свои диски, ваш планировщик ввода-вывода и наличие свободной памяти для дискового ввода-вывода, гораздо важнее, чем выбор FS, но вы специально спрашивали о FS. Однако вы не даете много информации о своих требованиях к устойчивости: насколько надежна ваша сила? Вам нужна возможность создания снимков?

Хотя я большой поклонник Reiser и много лет запускал его на своих веб-серверах, я бы не стал использовать его в новой системе - он никогда не был принят как часть ядра Linux, и разработка прекращается.

Итак, на Linux-сервере оставшимися кандидатами являются XFS, JFS, Ext4 и BTRFS (есть и NILFS, но это снова что-то вроде нишевого инструмента, и, IMHO, снова плохая производительность).

Если вам необходимо использовать LVM (даже без IME моментальных снимков, есть значительные накладные расходы на производительность), убедитесь, что у вас есть последняя версия с поддержкой барьеров - и включите барьеры, если вы используете журналируемую файловую систему.

Если производительность - ваше единственное соображение, то пришло время начать тестирование - я рекомендую использовать fio Йенса Аксбоэ для измерения производительности чтения / записи - его можно настроить для моделирования ряда рабочих нагрузок.