Файловая система, обрабатывающая более 2 миллионов файлов

Файловая система, обрабатывающая более 2 миллионов файлов

Я собираюсь хранить файлы в одной папке на моем сервере. Количество файлов превысит2 миллиона. Каждый размер файла будет иметь диапазон между5 МБ - 100 МБ.

Какая файловая система может хорошо справиться с таким объемом данных?

Я знаю, что XFS может обрабатывать очень большие отдельные файлы. Может ли она обрабатывать большие объемы файлов?

решение1

XFS может это выдержать, но она выдержит лучше, если вы спланируете свой вариант использования. Доступ к этим данным (операции STAT и OPEN) будет происходить быстрее, если ОС придется пробираться через меньшее количество inodes, чтобы получить данные. Если у вас будет меньше, скажем, 30K файлов/каталогов в данном каталоге, вам не нужно беспокоиться об этой оптимизации.

Но если вы собираетесь увеличить размер, вам, возможно, стоит рассмотреть возможность использования -i size=512опции, которая даст вам больший размер inode. Это позволит иметь больше записей каталога на inode, поэтому ОС придется пролистывать меньше, чтобы пройти по дереву. Учитывая современные SSD, это улучшит ситуацию меньше, чем во времена spinning rust; но это оптимизация, которую стоит рассмотреть.

Однажды я управлял файловой системой на основе XFS, в которой было около 20 миллионов файлов, со средним размером файла около 100 КБ. Я разработал эту конкретную файловую систему для обработки более 100 миллионов, и она была на пути к этому, когда я ушел из этой компании. Это prod-версия системы, которую я описал здесь:Влияние высокого соотношения каталогов к файлам на XFS


XFS — лучший выбор для этого? Трудно сказать. Но я доверяю ему больше, чемдля больших файловых систем, подобных описанным вами.Возможно, он сможет это сделать, но более консервативная фракция системных операторов пока не считает его готовым к производству.

Связанный контент