Amazon DynamoDB预配置吞吐量(iOS SDK)

时间:2012-11-17 05:45:20

标签: ios amazon-web-services amazon-dynamodb amazon-cloudwatch

我是DynamoDB的新手。我对配置的吞吐量非常困惑。我正在创建一个iPhone游戏,用户可以在游戏中聊天。我有一个聊天表。聊天表包含GameID,UserID和Message。如何找到项目的大小来计算吞吐量。项目的大小完全取决于消息对吗?如何计算物品的大小?

亚马逊告诉我们,我们可以使用UpdateTable API修改吞吐量,也可以通过控制台手动修改吞吐量。如果我想更改表单代码,我怎么知道某个表的超出规定的吞吐量?如何从代码中检查?

我也对CloudWatch感到困惑。怎么理解这个?

有人可以帮帮我吗?请不要指向我的文档。

感谢。

1 个答案:

答案 0 :(得分:4)

我会尽力帮助解决困惑。

  • DynamoDB是一个关键:值数据库
  • CloudWatch是亚马逊的产品监控工具
  • 预配置吞吐量大致是您计划每秒读/写的项目KB

每当超出预配置吞吐量时,

  1. DynamoDB以ProvisionedThroughputExceededException
  2. 回答
  3. DynamoDB通知CloudWatch
  4. Cloudwatch的功能基本上是记录和聚合数据点。对于大多数应用程序,它只会跟踪每个连续5分钟的聚合数据。

    然后,您可以访问这些数据以进行“手动”监控或设置“警报”。 几周前在使用警报进行DynamoDB自动缩放的SO上有一个非常有趣的问题。您可能有兴趣阅读它:http://docs.amazonwebservices.com/amazondynamodb/latest/developerguide/ErrorHandling.html

    了解这一点,您就可以开始构建应用程序了。

    对于每个DynamoDB服务,都需要凭据才能访问它。即使它们可以限制在特定的表或操作集中,但将它们捆绑在应用程序中也是非常危险的。你会给任何不受信任的人提供MySQL或MongoDB或凭证,甚至是只读吗?

    我建议您构建应用程序以依赖自己的服务器吗?该服务器由您信任并构建,您可以安全地在那里执行任何授权检查,并授予其对您的表的完全访问权。

    我希望这会有所帮助。随意请求更多精确度。