Wir haben eine Anforderung, ein Schema einer Schule in Dynamodb zu erstellen. Die Anforderung lautet wie folgt:Wie man 1 modelliert: N: M in dynamodb
- Jede Schule enthält eine Liste der Kursgruppe. [1: N]
- Jede Kursgruppe enthält eine Liste von Kursen. [1: N]
- Jeder Kurs enthält eine Liste von Modulen [1: N]
Jede Einheit einen entsprechenden Satz von Attributen hat. Hier ist meine erste Sicht auf das Schema
Schule - School Id - Hash - Schlüssel, Attribute. Kursgruppe: School Id - Hashkey, Kurs Group - Range Schlüssel mit Attributen Kurse: School Id - HashKey, [Kursgruppe + Kursname] - Bereich Schlüssel mit Attributen. Module: Schulkennung - HashKey, [Kursgruppe + Kursname + Modulname] - Bereichsschlüssel mit Attributen.
Das Problem mit dem obigen Schema ist, dass wenn ich ein Modul im Vorfeld mit dem Erstellen eines Kurses und CourseGroup erstellen will, es nicht funktioniert. Ich habe auch die folgenden Abfragen, die ich an diesem Schema durchführen möchte.
- Erhalten Sie die Liste aller Kursgruppen und Kurse und Module für eine bestimmte Schule.
- Holen Sie sich die Liste der Kursgruppen für eine bestimmte Schule.
- Erhalten Sie die Liste der Kurse für eine bestimmte Kursgruppe.
- Holen Sie sich die Liste aller Module für einen bestimmten Kurs. Hier