Как организовать файлы пользователей в хранилищах S3 таким образом, чтобы они были разделены друг от друга?

1) Может ли s3 быть подходящим решением для хранения приватных файлов пользователей сервиса с 10к-100к аккаунтов, или стоит рассмотреть другие варианты хранилищ данных?

2) Если s3 подходит для данной задачи, является ли использование промежуточного слоя в виде CRUD-приложения, которое хранит информацию о пользователях и позволяет извлекать их файлы из s3 (например, таблицу с objectID и бакетом) оптимальным решением, или существуют более предпочтительные способы для реализации этой задачи?
  • 24 июля 2024 г. 20:02
Ответы на вопрос 2
1) Для разделения файлов пользователей в хранилище S3 можно использовать структуру папок, где каждая папка будет соответствовать конкретному пользователю или аккаунту. Например, файлы пользователя с идентификатором "user123" будут храниться в папке "user123" внутри бакета S3. Это позволит легко отслеживать и управлять файлами каждого пользователя.

2) S3 может быть подходящим решением для хранения приватных файлов пользователей, даже с большим количеством аккаунтов. Однако, при таком масштабе стоит учитывать и другие факторы, такие как доступ к данным, безопасность и производительность.

Использование промежуточного слоя в виде CRUD-приложения для управления файлами пользователей в S3 может быть удобным и эффективным решением. Такое приложение может обеспечить удобный интерфейс для работы с файлами, а также дополнительные функциональности, такие как доступ к файлам через API, синхронизацию и т.д. Однако, стоит помнить о возможных затруднениях с производительностью и масштабируемостью при обработке большого количества данных.

В целом, управление файлами пользователей в S3 с использованием CRUD-приложения может быть хорошим выбором, но перед принятием окончательного решения стоит проанализировать все аспекты данной задачи и выбрать наиболее оптимальный подход в конкретном контексте.
Я начал использовать s3 не очень давно и у меня возник такой вопрос.

Проверьте трафик ваш. S3 может оказаться дорогим решением.

1/2) И подходит, и нет. Если кратко, у вас должно быть
?fileId=123 -> потом проверка доступа на этот файл -> потом отдача файла через ваш сервер ( не через прямую ссылку s3).

А так, любое решение хранения файлов, и отдача через прокси.
Похожие вопросы