2012-02-08 127 views
2

我有几千兆字节的文件,我希望在一个系统中的某处可以在线存储,我可以使用HTTP请求从多个服务器访问这些文件。这些大多是5-200kb的文本文档(很少有二进制格式),不经常读取,需要以所有服务器都可以访问的方式进行存储。成本是一个重要因素。我应该使用Amazon S3还是SimpleDB存储小文档?

这些文件没有附加属性,所以如果文件较大,我肯定会使用S3,但由于它们太小,我不确定哪种服务更容易处理。

有没有人使用过这两种服务中的任何一种?

回答

2

S3具有很大的优势,您可以通过HTTP非常简单地访问文件,并且它支持创建/更新/删除文件的REST操作。这使得谈话非常容易。

结合S3的实际情况,您只需支付存储费(使用SimpleDB,您还需支付机器小时数),并且我认为S3是这种情况下最好的解决方案。

+1

此外,S3的开销只有54个字节,因此您需要为您存储的内容+ 54付费, - 这对您的需求没有太大的开销。所有AWS都支持REST,但同意很好的“一切”都可以与S3交谈。 – 2012-02-09 16:36:07

3

我很确定SimpleDB中的最大行大小低于200kb,所以你必须使用S3。

2

我目前有一个文件管理系统,运行在几台服务器上,所有的文件都存储在S3中。文件/文件的范围从1KB到2GB。到目前为止,我发现s3非常出色,几乎可以在任何语言中很容易地进行通信,并且作为奖励提供AES加密。

1

如果存储大小&成本是您的主要决定性因素 - SimpleDB的大小调整模型包含索引,因此成本高于S3字节。从每GB月0.25美元到0.34美元不等,将SimpleDB加载数据并且不使用复杂查询是一种浪费。

1k的属性值大小限制可能会影响您的设计,并要求您分块值。非常适合JavaScript /可怕的HTML。

SimpleDB作为您在S3上托管的内容的索引以及在EC2上处理的前/后处理的功能非常棒。

  • 您可以免费获得内部带宽。
  • S3是最便宜的GB-m。
  • 积极减少/压缩你的输出通过EC2代理,你实际上只支付缩略图带宽成本。
  • 添加一个缓存代理将SimpleDB cpu成本降到最低。
相关问题