我想问一下哪种服务最适合我 . 例如,一个类似Facebook的移动应用程序,我需要跟踪用户的每个动作,例如访问过的页面或点击的链接 .
我正在考虑使用DynamoDB创建多个表来跟踪每个不同的活动 . 当我运行我的分析应用程序时,它将查询每个表的所有数据(相似的哈希键但不同的范围键,以便我可以查询所有数据)并在应用程序中计算结果 . 因此,主要成本是每个表的读取吞吐量很容易达到250读/秒(〜$ 28 / mth) . 每个表的存储没有限制,所以它是免费的吗?
对于Redshift,我将支付每月100%利用的存储容量160GB . 那将花费我大约14.62美元/月 . 虽然它看起来更便宜,但我不熟悉Redshift,因此,我不确定其他隐藏的成本是多少 .
提前致谢!
1 回答
Pricing for Amazon DynamoDB有几个组成部分:
预配吞吐量容量(表的速度)
索引数据存储(存储数据的成本)
数据传输(用于从AWS到Internet的数据)
例如,100GB的数据存储成本约为25美元 .
如果你想要250读/秒,那么每50个单位需要花费0.0065美元,这是
.0065 * 5 units * 24 hours * 30 days = $23.40
(加上一些写入容量单位) .Pricing for Amazon Redshift基于节点的数量和类型 . 160GB
dc1.large
节点每个节点的成本为25c/hour * 24 hours * 30 days = $180
(但您的情况可能只需要一个节点) .因此,亚马逊Redshift更昂贵,但它也是一个功能更强大的系统 . 您可以针对Amazon Redshift运行复杂的SQL,而您必须编写应用程序以从DynamoDB检索,加入和计算信息 . 将DynamoDB视为存储服务,而Redshift也是一种查询服务 .
但是,真正的决定应该基于您将如何使用数据 . 如果您可以创建可与DynamoDB一起使用的应用程序,则使用它 . 但是,很多人发现在Redshift上使用SQL的简单性要容易得多 .