Проектирование файлового хранилища
Добрый день. Нужны советы по проектированию файлового хранилища.
Задача: Загрузка различного типа файлов. Своего рода, очень упрощенный аналог яндекс диска с переходом по директориям. Как лучше хранить данные(название, вес, дата загрузки и т.п.) загруженного файла? Есть несколько вариантов: 1) Хранить данные всех файлов в директории, в одном конфиге json. (Например, в одной папке 10 файлов и 1 json в котором хранятся все данные этих 10 файлов) 2) Хранить данные для каждого файла в отдельном json. (10 файлов = 10 json) 3) Хранить данные о файле в БД. Нужно так же учитывать, что файлы в одну директорию могут загружаться разными пользователями одновременно. В таком случае вариант 1 по всей видимости отпадает. Возможно все 3 варианта полный бред, если у кого-то есть мысли, опыт в этом, поделитесь, пожалуйста. |
Первый вариант - вообще не решение, вероятность потерять все данные очень велика при малейшей ошибке при записи.
Второй получше, т.к. в случае возникновения проблем вы потеряете данные только одного файла. Третий вариант - лучшее решение. К тому же даст возможность быстро собрать аналитические данные по загруженным файлам без необходимости читать данные каждого файла. |
Часовой пояс GMT +3, время: 20:34. |