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