1

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

Мой сайт имеет около 1 000 000 пользовательских фотографий и растет с каждым днем, поэтому я структурирую папки, в которых фотографии сохраняются, примерно как 9/8/5, поэтому он размещает X фотографий в папке, а затем начинает помещать в новую папку.

Я знаю, что это не очень большая проблема с производительностью, но я считаю, что слишком много файлов мешает искать время

Я хочу знать, какое количество файлов нужно ограничить папкой?

5 ответов5

3

Лично я бы не слишком волновался об этом, но я бы лично изменил файловую систему, чтобы она сохранялась в формате даты.

Например, 2009/08/06.

Это сократит вашу ежедневную сумму, по крайней мере, если она будет организована, но ваша годовая сумма не изменится.

Я никогда не беспокоился о том, сколько я положил в папку, я просто держу вещи в порядке.

1

Похоже на этот вопрос.

1

В файловых системах ext3 вы можете иметь около 32000 подкаталогов в каталоге:

Для ext2 и ext3 жесткое ограничение составляет 31998, поскольку EXT [23] _LINK_MAX равно 32000, и каждая из этих подкаталогов (папок) имеет ссылку на своего родителя, которая начала свою жизнь со счетчика ссылок 2.

Предел для достойной производительности, вероятно, будет немного меньше.

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

0

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

0

Я обычно делю так, чтобы в папке было 10000 файлов. Это довольно легко, если у вас есть какой-то числовой идентификатор для ваших файлов.

Например, если вы используете файл с идентификатором = 9876543, вы можете использовать следующий процесс:

  • Номер формата с 12 цифрами (000009876543)
  • Использует первые восемь цифр в качестве идентификатора папки (0000/0987)
  • Сохраните файл как (0000/0987/myfile.jpg)

В то время как большинство файловых систем позволяют хранить больше файлов в одной папке, это делает вещи более организованными, будет проще, если вам в конечном итоге потребуется разделить на несколько томов, и если вы используете Windows, это также гарантирует, что Explorer выиграл ' Я не могу прочитать файлы 1M. :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .