在Amazon S3中进行合理的文件管理

时间:2012-12-28 10:35:45

标签: image amazon-web-services amazon-s3 storage scalability

我正在开发一个网站,该网站开始生成大量用户上传的照片,然后将其转换为不同大小和存储的多个缩略图。到目前为止,这些已存储在本地,但我想开始通过Amazon S3存储和提供它们。

我已经阅读了亚马逊的存储桶和文件命名规则,这些规则很明确,但我想知道是否还有其他实用的最佳实践以便将来维护。

到现在为止,我一直这样做:

  • GUID 31928的用户在12-01-15 15:38:44上传image.jpg
  • 缩略图“small”存储为/s/28/19/3/31928/120115153844.jpg

...其中路径是从GUID和时间戳中的图像文件名派生的。这可以在不创建大量文件夹的情况下分发文件,使所有内容保持足够独特,并且甚至可以手动将图像与GUID进行匹配。到目前为止它运作良好。

使用S3,我可能会从一个桶中提供这些图像,但由于存储桶不能包含子文件夹,我很好奇其他人如何存储大量图像。例如:

  • hash:2fkoer983RoerWokfw.jpg
  • guid_hash:31928_2fkoer983RoerWokfw.jpg
  • guid_size_hash:31928_s_2fkoer983RoerWokfw.jpg
  • ......还是其他什么?

我是否过度思考这个?感谢任何经验。

1 个答案:

答案 0 :(得分:3)

事实上,您可以使用与您已有的完全相同的命名方案。 /字符在S3对象名称中完全有效,仅表示.q之类的任何其他字符。