単一のネットワーク呼び出しによる Firestore での複数のドキュメントの取得
Firestore は、1 回の往復で複数のドキュメントを取得する効率的な方法を提供します。これにより、大量のドキュメントのフェッチを処理する際のパフォーマンスを大幅に最適化できます。
Node.js のアプローチ
Node.js では、getAll() メソッドを使用できます。複数のドキュメントを取得するには:
const {Firestore} = require('@google-cloud/firestore'); const firestore = new Firestore(); const documentRefs = [ firestore.doc('col/doc1'), firestore.doc('col/doc2'), ]; firestore.getAll(...documentRefs).then(docs => { docs.forEach(doc => { console.log(`Document: ${doc.id}, Data: ${JSON.stringify(doc.data())}`); }); });
このメソッドは、結果のドキュメントを含む配列に解決される Promise を返します。
In クエリのサポート
Cloud Firestore は IN クエリをサポートするようになりました。これにより、複数のドキュメントを取得する別の効率的な方法が提供されます:
const inClause = firestore.FieldPath.documentId(), 'in', ["123", "456", "789"]; const query = firestore.collection('myCollection').where(inClause); const docs = await query.get();
以上が1 回のネットワーク呼び出しで複数の Firestore ドキュメントを効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。