質問を言い換える1つの方法は、ドキュメントがそれぞれ16mb対16kbの場合、100万のドキュメントクエリに時間がかかるということです。
私自身の経験から、間違っている場合は訂正してください。ドキュメントサイズが小さいほど、クエリは高速になります。
私は500kドキュメントと25kドキュメントに対してクエリを実行しましたが、25kクエリは著しく高速で、数ミリ秒から1〜3秒の範囲で高速でした。本番環境では、時差は約2倍から10倍多くなります。
ドキュメントサイズが関係する1つの側面は、クエリの並べ替えです。この場合、ドキュメントサイズは、クエリ自体が実行されるかどうかに影響します。わずか2,000のドキュメントを並べ替えようとして、何度もこの制限に達しました。
ここでいくつかのソリューションに関するその他のリファレンス: https://docs.mongodb.org/manual / reference / Limits /#operations https://docs.mongodb.org/ manual / reference / operator / aggregation / sort /#sort-memory-limit
結局のところ、苦しんでいるのはエンドユーザーです。
パフォーマンスが許容できないほど遅くなる原因となる大きなクエリを修正しようとすると。私は通常、データのサブセットを使用して新しいコレクションを作成し、並べ替えと制限とともに多くのクエリ条件を使用していることに気付きます。
これがお役に立てば幸いです!