【发布时间】:2021-05-20 21:25:51
【问题描述】:
我正在尝试使用单表设计对 3 个实体进行建模。他们是大学里的班级、年级和学生。学生有他们参加的每门课的成绩。一个学生可能上几个课,一个课可能有很多学生上。这是我的ER diagram。
我的访问模式:
- 获取学生 ID 的成绩和班级信息
- 获取学生 ID 和班级 ID 的年级和班级信息
- 获取所有课程
- 按类 ID 获取类
我正在为这样的数据建模:TableInverted index。
访问模式:
- 我不确定如何更改我的模型来完成此操作。有可能吗?
- 我可以查询 pk = class-ID、sk = class-ID OR student-ID
- 我可以在所有类上创建一个名为“type”的新字段并将其设置为“class”。我可以在类型字段上创建 GSI。然后我查询 GSI PK = class。
- 我可以查询 pk = class-ID。
我该怎么做#1?有没有更好的方法来做 #2 和 #3?
【问题讨论】:
-
你有可以展示的代码示例吗?
-
@Beefster 我没有。我还没有写任何代码。这纯粹是一个数据建模和数据库设计问题。
标签: database amazon-web-services database-design amazon-dynamodb data-modeling