Задать вопрос
@viktorov_aa

Какую БД выбрать для маленького файлового сервиса?

Я хочу сделать приложение на python(на Fastapi), которое будет работать примерно так:
Пользователи запускают задание, которое выгружает тяжелый отчет в файловую систему на сервере, после чего получают уведомление на почту с уникальной ссылкой. При переходе по ссылке автоматически скачивается файл.

Мне необходимо хранить информацию:
1. Связь ссылки с файлом в файловой системе
2. Историю скачиваний

Возможно, иногда мне надо будет чистить старые файлы(и соотвественно ссылки) массово(например старше 30 или 7 дней).
Ожидаю до выгрузки нескольких десятков тысяч файлов в месяц.

Посоветуйте, какую БД стоит использовать для таких целей? И почему именно ее?
  • Вопрос задан
  • 466 просмотров
Подписаться 1 Средний 1 комментарий
Ответ пользователя mayton2019 К ответам на вопрос (7)
mayton2019
@mayton2019
Bigdata Engineer
Вопрос в перспективе тянет на экспертную систему по выбору БД.

При данной постановке - можно брать любую документно-ориентированную. Все одинаково подходят.
Но если основной контент (80% берем по Паретто) это файлы - то можно брать Amazon S3, в дальнейшем с перспективой трансформировать это в DynamoDb если понадобятся транзакции или в Amazon Document Db (он же Mongo) если понадобится тонкая работа с атрибутами документов (или файлов).

Автор должен понять что в это вопросе нет единого правильного решения. Есть просто некая сравнительная табличка где есть набор фичей с одной стороны и набор DBMS с другой и нет такого покрытия которое бы закрыло ВСЕ фичи.
Ответ написан
Комментировать