大量のドキュメントを含む Web アプリがあります。ユーザーは ID (有効な MongoId / ObjectId) を入力できますが、ユーザーが入力しない場合は、最後の ID でオブジェクトを取得する必要があります。
最後のオブジェクトを検索する速度が気になります。私は現在、次のようにしています:
db.docs.find({"status": 1}).sort({"_id": -1}).limit(1);
//Or in php:
$docs->find(array('status' => 1))->sort(array('_id' => -1))->limit(1)->getNext();
これは少し遅くないですか?最初に、ステータス 1 のすべてのドキュメントを探してから、並べ替えてから制限します。ステータス 1 の最後のドキュメントを取得するためのより良い方法はありますか?