Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Как хранить 3 миллиона файлов?


Автор: Bogdan1024 7.4.2008, 13:38
Сайт должен хранить 3 миллиона фотографий. Фотографии добавляются/удаляются/заменяются и просто делается проверка на File.Exists(). Можно ли хранить очень много файлов в одной папке? Может лучше раскидать эти файлы по разным папкам, а папки по папкам? 

Автор: mr.DUDA 7.4.2008, 13:44
Цитата(Bogdan1024 @  7.4.2008,  13:38 Найти цитируемый пост)
Может лучше раскидать эти файлы по разным папкам, а папки по папкам? 

Собственно, вот и ответ на вопрос темы.  smile 

Автор: Wizard_Memfis 7.4.2008, 14:06
+ еще мона сделать вместо имен папок, даты!!!У меня так организовано! smile 

Автор: Bogdan1024 7.4.2008, 15:19
Цитата
Может лучше раскидать эти файлы по разным папкам, а папки по папкам?

Почему это лучше?

Автор: ivashkanet 7.4.2008, 15:45
ИМХО, если в эти папки не лазить самому, то пофик они в папках или нет. Комп взял адрес из БД, нашел файл и показал.

Но все же я бы сделал папки.
Папки называть нужно естественным образом:
3 миллиона картинок не могут лежать безсистемно в базе, тогда ничего нельзя будет найти.
Например могут быть категории: животные, птицы, дома, ...
Если файлы относятся к конкретному юзеру, то началом папки может быть имя юзера, потом категория "я у бабушки в деревне" и тыды...

Автор: Rififi 7.4.2008, 16:05
при прямом доступе к файлу (наприммер, полный путь хранится в БД) и файловой системе ntfs это несущественно, сие опробовано на каталоге который содержит несколько сот тысяч подкаталогов, и в каждом подкаталоге порядка 100-200 файлов

Автор: Bogdan1024 8.4.2008, 16:44
Цитата
при прямом доступе к файлу (наприммер, полный путь хранится в БД) и файловой системе ntfs это несущественно, сие опробовано на каталоге который содержит несколько сот тысяч подкаталогов, и в каждом подкаталоге порядка 100-200 файлов

Вот! Я подозревал об этом. Но я всё равно прочитаю про механизм виндовского доступа к файлу чтобы убедиться наверняка.
Всем спасибо за ответы!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)