我们正在移动应用中实现'受信任的客户端'模型,在该应用程序中,服务器只是存储'Blobs',并且对其内容不了解,除了版本号。
这些斑点可用于静态数据和保存的用户数据。我们需要准备存储1亿个斑点。写作将比阅读更多。斑点平均约20kb。
想知道使用DynamoDB以及是否有更合适的东西可能会遇到什么样的问题。
dynamo可以使用:
- 400 kb最大材料尺寸适合您的小斑点
- 二进制数据类型
您选择的其他一些事情要考虑:
- 项目版本。您在描述中提到了版本号,但是如果您有其他版本的要求,也需要评估这些需求。(S3具有对象版本控制,而DynamoDB则必须使用版本化属性)
- 基于您的物品尺寸的DynamoDB的容量使用 - 由于每个项目为〜20 kb,因此您应考虑您的应用程序的实际吞吐量消耗
- 多区域需求。S3增加了对跨区域复制的支持,而DynamoDB对此没有任何内容
- 您的访问模式成本
s3将是存储斑点的绝佳场所。您可以使用DynamoDB及其S3关键名称保存有关它们的信息。
这些斑点很小,以至于DynamoDB或RD也可以很好地处理它们。