Обычно компании выбирают сторонние или отдельные службы хранения, оптимизированные для хранения файлов.Некоторые поставляются с планом бесплатной пробной версии, таким как aws-s3, gcs от Google, Azure и другие.
Но если это действительно касается хранения файлов в нашем собственном сервисе, то достаточно поставить всефайлы в одной и той же папке (каталог плоских файлов) и выполните классификацию файлов, прикрепив файл к соответствующим моделям.Поместив что-то вроде этого в данные: { "username": "arege", "name": "Arle Greg", "profile_picture_file":"timestamp_somehash.png"}
Что касается второго вопроса, если вашей службе требуется записывать даты для всех загруженных типов файлов в целом, то хорошо иметь такую модель.Но если это только для небольшой части типов файлов в сервисе, его можно записать в соответствующей модели вместе со ссылкой на файл.