@olololosh

Как лучше всего организовать хранение файлов?

Как лучше всего организовать хранение файлов? Пользователь может создавать папки, и туда загружать файлы. Где эти файлы хранить? Создать родительскую папку, или же сделать БД? Желательно чем проще, тем лучше
  • Вопрос задан
  • 2661 просмотр
Пригласить эксперта
Ответы на вопрос 2
timych
@timych
Все зависит от целей. К примеру в моем проектике много фотографий. Сами оригиналы хранятся на диске , а их превью в базе данных вместе с другой информацией. Файлы можно хранить к примеру таким образом:
Например данные о файле записаны в базе данных с ID 35678. Тип данных поля ID в базе аналогичен типу int в Java . Значит максимальное количество символов в ID - 10. Переводим наш ID в строку вида 0000035678.
Далее разбиваем на директории: например по два знака C:\my_file_storage\ 00\00\03\56\78.
Создаем директорию по данному пути и кладем туда файл. (C:\my_file_storage\ 00\00\03\56\78\MyFile.dat)
Это в случае если у вас большое количество файлов и вы хотите уникальную директорию для каждого. Так мы гарантируем что в одной директории не будет более ста директорий.
Можно разбить покрупней.
Можно в конечную директорию класть не по одному файлу а по многу:
C:\my_file_storage\ 00\00\03\56\root_for_hundred_files\MyFile.dat
(В данном случае в конечной папке не будет более ста файлов).
Папки могут быть виртуальными - просто в БД надо хранить иерархию папок пользователя.

Но можно сделать и реальную файловую структуру, как юзер захотел. (Но мне такой подход не очень нравится )
Но повторюсь все зависит от целей, количества файлов, их размеров.
Ответ написан
Комментировать
@lavrentiev
Back-end разработчик
https://owncloud.org/ или свой вариант Sumba
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
28 нояб. 2024, в 18:46
3000 руб./за проект
28 нояб. 2024, в 17:46
10000 руб./за проект
28 нояб. 2024, в 17:38
12000 руб./за проект