在S3中整理文件

时间:2018-08-21 02:46:13

标签: amazon-web-services amazon-s3

我有一个社交媒体网络应用程序。用户上传图片,例如个人资料图片,项目图片等。在S3存储桶中组织这些文件的最佳方法是什么?

我想创建一个文件夹,其名称为userid,在存储桶中以及在其他多个文件夹(即个人资料,项目等)的内部。

不确定这是否是最好的方法!

2 个答案:

答案 0 :(得分:0)

坦率地说,您在Amazon S3中分配对象的名称(键)是不相关的。

重要的是,您有一个数据库来跟踪对象,它们的所有权和用途。

您不应将Amazon S3对象的文件名(密钥)用作存储有关该对象的信息的方式,因为您的应用程序可能在S3中包含数百万个对象,并且扫描对象列表以查看是否太慢哪些存在。相反,请查询数据库以查找它们。

要回答您的问题:是的,如果需要,可以按用户名创建前缀,但是只需给它提供一个唯一的名称(例如Universally unique identifier - Wikipedia)即可,避免名称冲突。

>

答案 1 :(得分:0)

以前,为了获得更好的性能,需要添加随机前缀。 herehere的更多详细信息。

以下是其中一页的摘录

在以下情况下,请注意您的命名方案:

  

分发密钥名称

     

不保存对象的键名以日期或标准键开头   名称,它会提高S3索引编制的复杂度,并会减少   性能,因为基于索引的对象保存在单个   存储分区。

     

Amazon S3在其内部索引中按字典顺序维护密钥。

但是,从17 Jul 2018 announcement开始,不需要为S3键添加随机前缀以提高性能