2017-07-02 33 views
-2

我在DynamoDB上有表A和表B.在dynamoDB中链接两个表

表A: “主键”:字符串, “名” 的字符串,

表B: “主密钥”:字符串, “主键的列表表A的(字符串)”:列表

在删除表A中的项目时,我需要删除表B列表中的所有主键。 有没有任何有效的机制可以这样做?

感谢

+0

如果人们有兴趣创建为这些类型的问题的场所,按照[开StackExchange致力于云计算网站(https://area51.stackexchange.com/proposals/110490/cloud-computing-aws的建议-azure-google-openstack-etc?referrer = Gtut7wQSWPk88jFJz_zqMg2),并提出一些示例问题。 –

回答

3

你需要的是定义为关系完整性。这是关系数据库使用的一个概念,可以确保关系信息始终处于正确的状态。一个依赖于其他信息将永远不会处于不正确的状态。

DynamoDB是NoSQL数据库。按照设计,它不保证关系完整性。设计DynamoDB的人员选择不保证关系完整性能够提供更好的性能和更好的可用性(使用分布式节点)。

这意味着,如果你想根据DynamoDB,以确保您的应用程序关系完整性,您需要实现它在你的代码。所以你的应用程序必须从两个表中删除信息。

+1

或者也许你不应该在这里使用DynamoDB。如果没有对B表进行全面扫描,我不认为你能得到你所需要的,这对于DDB来说是非常昂贵的操作。 –