【问题标题】:Suggestion regarding Cost reduction on Using Dynamodb关于使用 Dynamodb 降低成本的建议
【发布时间】:2017-06-24 03:12:49
【问题描述】:

我是 dynamodb 的新手,我只有 10 个项目和 1 个全局二级索引,读/写容量单位为 5(最低),成本约为 6/2 天,这对我来说是不可接受的,因为我只使用了我的 0.01%实际需求我浏览了aws dynamodb降价中的一些文档对我没有帮助,因为AWS建议使用查询或扫描来避免突然的峰值读取,单独使用分区键是不可能获得多个项目的。

如下表

Add_Employee

Add_Stocks

添加供应商

上表都有读/写容量单位1,每个都有一个全局二级索引读/写容量单位1。所有表都在指定区域内配置亚太地区(孟买)

这是我的账单供参考

每月 25 个单位的读取容量每小时 0.00 美元(免费套餐)18,600 ReadCapacityUnit-Hrs 0.00 美元

每月 25 个单位的写入容量每小时 0.00 USD(免费套餐)18,600 WriteCapacityUnit-Hrs 0.00 USD

对于超出免费层级 6,723 ReadCapacityUnit-Hrs 的读取容量单位每小时 $0.000148 $1.00

对于超出免费层级 6,723 WriteCapacityUnit-Hrs 的写入容量单位,每小时 0.00074 美元 4.98 美元

提前致谢

【问题讨论】:

  • 您应该完全在免费套餐内。听起来您的表配置错误。请在您的帐户中发布每个表的确切读/写容量单位,以及每个全局二级索引。并确保您没有在其他地区定义任何表。
  • 我会为此向亚马逊支持提交一张票。
  • 太好了。谢谢
  • 您现在可以自动缩放 dynamodb 容量docs.aws.amazon.com/amazondynamodb/latest/developerguide/…

标签: amazon-web-services amazon-dynamodb


【解决方案1】:

您不仅要为实际吞吐量付费,还要为预置吞吐量付费。

查看The Dynamo cost 页面,这意味着您为每个表每月存在的每个吞吐量小时支付 0.0065 美元,减去免费层小时数。

根据您的表名,我猜您没有遵循使用1 de-normalized table 表处理所有内容的最佳做法。使用 RDS 实例可能会更好,它不会按表收费,而是按小时收费(它是后台的 EC2 实例)。

成本明细

默认为 5 个预置读/写单元,每月 30 天有 720 小时

$0.0065 * 5 * 720 = 每桌每月 $24.37

免费套餐通常允许一个月免费使用一张桌子。

根据AWS docs,您必须至少有 1 个预配单元。

如何保存

  • 确保您遵循使用1 de-normalized table的最佳做法

  • 对于任何开发工作,确保读取和写入规定都设置为 1(0.0065 美元 * 1 * 720 = 每个表每月 4.68 美元

  • 如果您知道自己将离开一段时间,请从 AWS 中删除堆栈。仅在表存在时才向您收费。

通过限制读/写单位,您应该能够将成本降低到每个开发人员每张桌子 5.00 美元左右。

请勿开启自动缩放

评论者建议自动缩放。 Per docs,您至少需要支付 5 个单位的费用,这就是您现在支付的费用。

This AWS forum link 差不多。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-16
    相关资源
    最近更新 更多