Есть ли какие-либо проблемы с наличием огромных папок?

Мой сайт требует 10,000 + 1-2 секунды mp3 клипы, сохраненные как отдельные файлы. Они - каждый приблизительно 12 КБ в размере.

Есть ли какие-либо потенциальные проблемы с хранением их всех в одной огромной папке как word_1.mp3, word_2.mp3 и т.д....? Есть ли другие подходы?

Большое спасибо, Patrick


Править

Извините за то, чтобы не быть более ясным. Файлы будут загружены на папку через FTP, но функция JavaScript (SoundManager2) выбирает mp3 файлы для проигрывания. Будут проблемы скорости с проверкой папки для правильного файла?

3
задан 04.11.2014, 16:30

5 ответов

Действительно ли можно ли отсортировать и сгруппировать ли mp3 в темы? Если так, затем я поместил бы их в отдельные папки, все от корневой папки называют mp3, клипы, или безотносительно исков Ваше использование.

Возможно, это - просто я, но 1000-ми наличия в одной папке может быть трудно управлять, плюс некоторый FS не мог бы любить его.

2
ответ дан 07.12.2019, 23:30

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

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

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

2
ответ дан 07.12.2019, 23:30

От личного опыта некоторые файловые системы прекратят работу с 1k + файлы в папке. Я помню NTFS, являющийся одним из эти приблизительно 3-3.5 года назад на win2003/XP.

Фс Reiser, как предполагается, разработана для этого вида вещи, Другие файловые системы UNIX могли бы преуспеть также. Для резервного копирования этого, я скажу, что в мире UNIX все - файл, и тяжелые почтовые демоны полагаются на это и часто наполняют папки тысячами электронных писем (qmail).

2
ответ дан 07.12.2019, 23:30

10000 + файлы не так очень.

Каждая файловая система, что не используемый связанный список для dentry устройства хранения данных должен быть прекрасным, например, даже ext3 с dir_index опцией. inodes и dentries 10 000 + файл легко кэшируются в RAM.

0
ответ дан 07.12.2019, 23:30

хороший совет относительно больших папок на томах NTFS:

Вот некоторый совет от кого-то со средой, где у нас есть папки, содержащие десятки миллионов файлов.

  1. Папка хранит индексную информацию (ссылки на дочерние файлы и дочернюю папку) в индексном файле. Этот файл станет очень большим, когда у Вас будет много детей. Обратите внимание, что это не различает ребенка, это - папка и ребенок, это - файл. Единственной разницей действительно является содержание того ребенка, или индекс папки ребенка или данные файла ребенка.Примечание: Я упрощаю это несколько, но это понимает через.
  2. Индексный файл будет фрагментирован. Когда это будет слишком фрагментировано, Вы будете не мочь добавить файлы к той папке. Это вызвано тем, что существует предел на # фрагментов, которые это позволяется. Это дизайном. Я подтвердил это с Microsoft в вызове инцидента поддержки. Таким образом, хотя предел theorical является несколькими миллиардами, удача, когда Вы начинаете поражать десятки миллиона файлов.
  3. Это не все плохо как бы то ни было. Можно использовать инструмент: contig.exe для дефрагментации этого индекса. Это не уменьшит размер индекса (который может достигнуть до нескольких Концертов десятков миллиона файлов), но можно уменьшить # фрагментов.Примечание: Инструмент Disk Defragment НЕ будет дефрагментировать индекс папки. Это будет дефрагментировать данные файла. Только инструмент contig.exe будет дефрагментировать индекс. К вашему сведению: можно также использовать это для дефрагментации данных отдельного файла.
  4. Если Вы дефрагментируетесь, не ожидайте, пока Вы не поражаете макс. # предела фрагмента. У меня есть папка, где я не могу дефрагментироваться, потому что я ожидал, пока не слишком поздно. Мой следующий тест должен попытаться переместить некоторые файлы из той папки в другую папку, чтобы видеть, мог ли я дефрагментировать его затем. Если бы это перестало работать, то то, что я должен был бы сделать, 1) создают новую папку. 2) перемещение пакет файлов к новой папке. 3) дефрагментация новая папка. повторите № 2 и № 3, пока это не сделано, и затем 4) удалите старую папку и переименуйте новую папку для соответствия старому.

Отвечать на Ваш вопрос более непосредственно: Если Вы смотрите на 100K записи, никакие заботы. Пойдите выводят себя из строя. Если Вы смотрите на десятки миллионов записей, то также:

a) Планируйте подразделять их на подпапки (например, позволяет, говорят, что Вы имеете 100M файлы. Лучше сохранить их в 1 000 папок так, чтобы у Вас только было 100 000 файлов на папку, чем сохранить их в 1 большую папку. Это создаст 1 000 индексов папки вместо единственного большого, это, более вероятно, поразит макс. # предела фрагментов или

b) Планируйте выполнять contig.exe регулярно для хранения индекса большой папки дефрагментируемым.

Источник

Контиг является бесплатным программным обеспечением.

если Вы не удобны с командной строкой, можно использовать Дефрагментатор Питания, GUI, записанный для Контига.

1
ответ дан 07.12.2019, 23:30

Теги

Похожие вопросы