我有几GB的文档,我希望将它们在线存储在系统中的某个位置,我可以使用HTTP请求从多个服务器访问这些文档。这些大多是5-2000KB的文本文档(很少是二进制格式的),不经常读取,需要以所有服务器都可以访问的方式存储。成本是一个重要因素。
这些文档没有额外的属性,所以如果文件更大,我当然会使用S3,但由于它们太小,我不确定哪种服务更容易使用。
有人在这类事情上使用过这两种服务吗?
我很确定SimpleDB中的最大行大小低于200kb,所以您必须使用S3。
S3具有巨大的优势,可以通过HTTP非常简单地访问文件,并且它支持创建/更新/删除文件的REST操作。这使得它非常容易交谈。
再加上使用S3只需支付存储费用(使用SimpleDB,还需支付机器工作时间),我认为S3是这种情况下的最佳解决方案。
我目前有一个跨多个服务器运行的文档管理系统,它将所有文档存储在S3中。文档/文件的大小从1KB到2GB不等。到目前为止,我发现s3非常出色,几乎可以用任何语言进行通信,而且它还提供AES加密。
如果存储大小&成本是您的主要决定因素——SimpleDB的大小调整模型包括索引,因此成本超过S3字节。从每月0.25美元到0.34美元不等,用数据加载SimpleDB而不使用复杂的查询是一种浪费。
1k的属性值大小限制可能会影响您的设计,并要求您对值进行分组。非常适合javascript/非常适合html。
SimpleDB作为S3上托管和EC2上预处理/后处理内容的索引非常棒。
- 您可以免费获得内部带宽
- S3是最便宜的GB-m
- 通过EC2代理主动减少/压缩您的输出,您实际上只需支付缩略图带宽成本
- 添加缓存代理可以将SimpleDB的cpu成本降至最低