Terima kasih atas teriakannya di Dex!
Jika belum terlambat di tahun 2013, indeks yang saya sarankan untuk menghindari scanAndOrder di sini adalah { _id:-1, cl:1, user_id:1 }.
Alasannya adalah karena $lt pada _id dan $in pada user_id merupakan rentang di beberapa "ember" indeks. Indeks dari urutan lain selain di atas berarti ember tersebut masih harus diurutkan bersama untuk memenuhi pengurutan pada _id. Dengan menempatkan _id terlebih dahulu, semua dokumen yang dikunjungi dalam indeks akan diurutkan terlebih dahulu dengan benar.
Perhatikan bahwa ini sedikit perbaikan atas saran Andre ({ _id:-1, user_id:1, cl:1 }, yang juga harus menghindari scanAndOrder) karena memungkinkan pemeriksaan kesetaraan langsung pada cl untuk memangkas hasil.
Lihat http://blog.mongolab.com/2012/06/cardinal- in/ untuk lebih detail.