Здраствуйте.
Название возможено слишком умное)
У меня появилась проблема с хранением файлов, а точнее их роспределение по папкаам.
Вот мой вариант:
Есть запись с id 2842 например.
$numberData=sprintf('%06d',2842);
echo' /'.substr($numberData,-3,3).'/'.substr($numberData,-6,3).'/'.$numberData;
Хранится по папкам /842/002/002842/FILE.FILE
первые три цыфры (842) берутся с конца (с конца потому что роспределение будет ровномерно) , следующие три цыфры (002) берутся с четвертой по шестую цыфру.
В каждой папке будет всегда макс по 1000 папок.
Я тут не предлогаю свой способ.
Я хочю услышать в чем плох етот способ и чтобы указали как зделать лучше.
Ета проблема меня мучит уже 2 неделю.
А подобная архитектура вообще того стоит?
Зачем по 1к папок то? Объясни сам принцип задумки, может тогда что и посоветуют..
А почему бы не иметь одну папку и в БД хранить ID,имя_*md5* и по при скачивании извлекать имя файла которое ты будешь скачивать с той самой, одной единственной, папки?
10 Фев 2012, 15:43Надо просто хранить несколько изображений в папке.
Я их в папке храню в виде 1.gif,2.gif....
Все очень просто.
Записей ~50 000 пока что.
И для каждой записи по несколько файлов.
Febian пишет:
"Зачем для нескольких файлов такая вложенность?"
Твой вариант?
Ограничение есть 32к в папке.
Ок, только я пока еще не понял самой сути.. Эти папки для хранения файлов пользователя, и для каждого пользователя своя директория, я правильно понял?
10 Фев 2012, 17:32Febian пишет:
"Ок, только я пока еще не понял самой сути.. Эти папки для хранения файлов пользователя, и для каждого пользователя своя директория, я правильно понял?"
Ето папки не для пользевателей.
Страницы статические.
Чет типо рефератов с изображениями. Картинки не будут удаляться.
Также есть записи которые имеют только одну картинку, есть записи только с текстом.
Я зделал для каждой записи по папке где записи требуют изображений.
Записи с одной картинкой (скриншт) сохранялся так: /files/id записи/1.gif
Если запись требует несколько изображений сохранялся как: /files/id записи/номер картинки.gif
Но потом появилось ограничение на количество папок в папке, папок стало >32 000 папок.
Щас надо переделать архитектуру как файлы хранить.
Вот и мучаюсь как лучше будет(