亚马逊说
NoSQL设计与RDBMS设计需要不同的思维方式。对于RDBMS,您可以创建规范化的数据模型而无需考虑访问模式。然后,当出现新的问题和查询要求时,可以稍后对其进行扩展。相比之下,对于DynamoDB,您不应该开始设计架构,除非您知道它需要回答的问题。预先了解业务问题和应用程序用例是绝对必要的。
为了提高查询成本,我似乎应该在设计产品之后设计表格。
但是产品可以被枢转或附加新功能。在早期阶段,没人知道产品的去向。
dynamodb是否适合生长或可枢转的产品?
答案 0 :(得分:0)
我认为,与其他NoSQL解决方案相比,Dynamo DB的主要优点是它是托管数据库服务。您只需支付读写费用,就不必担心扩展以处理更大的数据,更多的用户。如果您正在制作原型,或者没有技术知识来在云端设置数据库服务器和主机,那么这将是有用且具有成本效益的。但是它有其局限性,因此,如果您有技术资源,请考虑使用另一个开源NoSQL选项。
我认为亚马逊的声明令人困惑,可能比其他任何事情都更具市场营销意义。如果仅以不同的元素访问数据而不必以复杂的方式进行组合,则可以使用NoSQL。如果您没有定义精确的模式,这也很有用,因为NoSQL不需要硬模式,您可以将任何字段存储在表中,并且始终可以添加新字段。当事情快速变化并且您不想像RDBMS那样严格迁移所有内容时,这很有用。但是,如果您将不得不运行复杂的逻辑或将来自多个表的数据组合起来的计算,则应使用RDBMS。您可以以混合方式将NoSQL用于某些数据,将RDBMS用于其他数据,但是在那种情况下,您可能不想使用Dynamo DB,因为您希望完全所有权来正确设置它。希望这可以帮助我确定其他人还有更多话要说,我欢迎提出评论以帮助我完善答案。