Sie entwerfen eine Chat-App mit mehreren Räumen und persistentem Nachrichtenverlauf unter Verwendung von Firestore. Wie sollten Sie Räume und Nachrichten modellieren?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Erstellen Sie eine rooms-Collection; jedes Raum-Dokument enthält eine Unter-Collection, deren Dokumente jeweils eine einzelne Nachricht enthalten..
Warum dies die Antwort ist
Die korrekte Modellierung ist eine rooms-Collection, wobei jedes Raum-Dokument eine Unter-Collection messages enthält, die wiederum ein Dokument pro Nachricht speichert. Dies ist eine gängige und effiziente Methode in Firestore für hierarchische Daten. Option "Erstellen Sie eine rooms-Collection; jedes Raum-Dokument speichert den gesamten Nachrichteninhalt" ist schlecht, da Dokumente in Firestore eine Größenbeschränkung haben und das Lesen aller Nachrichten eines Raumes bei jeder Abfrage ineffizient wäre. Option "Erstellen Sie eine rooms-Collection; für jeden Raum erstellen Sie eine Unter-Collection, die ein Dokument pro Nachricht enthält" ist grammatikalisch unklar und impliziert möglicherweise eine Top-Level-Collection pro Raum, was nicht skalierbar ist. Option "Erstellen Sie eine rooms-Collection mit einem Dokument pro Raum und eine separate Top-Level-messages-Collection mit einem Dokument pro Nachricht; speichern Sie Referenzen zu Nachrichten in jedem Raum-Dokument" erfordert zwei separate Abfragen (eine für den Raum, eine für die Nachrichten) und ist komplexer für die Datenverwaltung. Unter-Collections sind für dieses Szenario besser geeignet.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich