我试图更好地理解在 AWS DynamoDB 中使用邻接列表模式进行多对多 (m:n) 关系设计。
在此处查看 AWS 文档:https ://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-adjacency-graphs.html我们有一个示例,其中包含具有 m:n 关系的 Invoice 和 Bill 实体。
我了解我可以通过读取单个分区来获取与特定发票相关的所有账单的详细信息。例如,我可以查询 Invoice-92551 并根据分区中的附加项目了解与它关联的 2 个账单的一些属性。
我的问题是我必须做什么才能获得这两张账单的完整账单属性。这是否需要使用我从发票分区派生的 ID 进行 2 个额外的查询,还是我在这里缺少一些其他模式?
附加细节 参考截图中账单项目的 2 种不同描述:
- 发票分区中的帐单项目:“此发票中此帐单的属性”
- 自己分区中的账单项目:“此账单的更多属性”
这是否意味着我的 Invoice 分区应该包含我想通过最少查询访问的任何 Bill 属性?我最初认为 Bill 分区将包含我想要的大部分内容,但如果我想通过 Invoice 来获取它们,这并不完全有意义。