Firestore-Leistung: Effizientes Abrufen mehrerer Dokumente mit einem einzigen Roundtrip
Bei der Arbeit mit Firestore kann das Abrufen mehrerer Dokumente zu Leistungsproblemen werden. insbesondere, wenn für jedes Dokument individuelle Anfragen gestellt werden. Um den Datenabruf zu optimieren, ist es wichtig, eine Funktion zu nutzen, die das Abrufen mehrerer Dokumente mit einem einzigen Roundtrip zur Datenbank ermöglicht.
Verwendung der getAll()-Methode
Für in Node.js geschriebene serverseitige Anwendungen bietet die Methode getAll() eine praktische Möglichkeit, mehrere Dokumente mit einem einzigen Netzwerkaufruf abzurufen. Es akzeptiert eine variable Anzahl von DocumentReference-Objekten als Argumente und gibt ein Promise zurück, das ein Array von DocumentSnapshot-Objekten enthält.
Beispiel:
const firestore = getFirestore(); const docRef1 = firestore.doc('col/doc1'); const docRef2 = firestore.doc('col/doc2'); firestore.getAll(docRef1, docRef2).then(docs => { console.log(`First document: ${JSON.stringify(docs[0])}`); console.log(`Second document: ${JSON.stringify(docs[1])}`); });
IN Abfragen für Effizienter Dokumentenabruf
Firestore hat kürzlich IN-Abfragen eingeführt, die eine effizientere Lösung ermöglichen Möglichkeit, mehrere Dokumente anhand bestimmter IDs abzurufen. Mithilfe der FieldPath.documentId()- und „in“-Operatoren können Sie Abfragen erstellen, die Dokumente basierend auf einer Liste von IDs zurückgeben.
Beispiel:
const firestore = getFirestore(); const query = firestore.collection('col').where(firestore.FieldPath.documentId(), 'in', ["123", "456", "789"]); query.get().then(docs => { docs.forEach(doc => { console.log(`Retrieved document with ID: ${doc.id}`); }); });
Fazit:
Durch die Verwendung der getAll()-Methode oder IN-Abfragen können Entwickler ihre Firestore-Daten optimieren Abrufvorgänge und reduzieren die Anzahl der Roundtrips zur Datenbank. Dieser Ansatz verbessert die Leistung und Reaktionsfähigkeit von Anwendungen, insbesondere beim Abrufen mehrerer Dokumente oder beim Durchführen komplexer Abfragen.
Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Firestore-Dokumente in einem einzigen Roundtrip effizient abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!