firestore: ドキュメントを ID で取得するのとクエリで取得するのはどちらが速いですか?
P粉291886842
P粉291886842 2023-09-14 08:54:32
0
1
269

私のドキュメントのコレクションには (もちろん) ID がありますが、同じ ID を保持するフィールドもあります。 質問: このドキュメントを id

で取得した方が早いですか? リーリー

またはクエリによる

リーリー

関数コードをリファクタリングしました。以前はクエリを使用していましたが、今ではコレクション内のドキュメントの ID を直接使用しています。しかし、私の印象では、この直接的なアプローチにははるかに時間がかかります。これはただの印象なのでしょうか...

P粉291886842
P粉291886842

全員に返信(1)
P粉232409069

理論的には、この 2 つの間にパフォーマンスの違いはありません。 Firestore クエリは、クエリによって返されるドキュメントの数に応じて拡張されます。両方のクエリが 1 つのドキュメントを返す場合、同じ操作を実行する必要があります。基本的に、インデックスを使用して一意の値を検索します。

参照: クエリは、データ セットのサイズではなく、結果セットのサイズに応じて拡張されます

これを本当にマイクロベンチマークしたい場合は、独自のテストを実行してどちらが速いかを調べる必要があります。しかし、最適化する必要のないものの最適化には多くの時間を費やすことになると思います。これに時間を費やす価値があるかどうかは、自分で決めることができます。

私の独断的なアドバイス: パフォーマンスではなく、コードの明確さを心配すべきです。プログラムの文脈で読んだ場合、どちらがより意味が分かりますか?一般に、ドキュメント参照の 1 回のフェッチは短くて読みやすく、単一のドキュメントのみを期待する場合は一連のドキュメント結果を確認する必要はありませんが、意見は異なる場合があります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!