Заявката в регистрационния файл не съответства на заявката, която изпълнявате, местоположението е различно:
[ 116.3426399230957, 39.95959281921387 ]
спрямо[ 116.3175773620605, 39.97607231140137 ]
Също така не мисля, че сте възпроизвели целия си ред от дневника, тъй като той само споменава area
а не deliver_area
.
Те обаче не са наистина бавни . В първия случай отне 103 ms, което в някои случаи може да се случи, тъй като сървърът ви извършва други IO. Втората заявка отне 5ms като explain()
изходът ви казва.
Но най-впечатляващото е, че вашият основен критерий е id: 59
. Не знам какъв е вашият _id
е, но ако зададете индекс на id
тогава това дори не трябва да използва 2dsphere
индекс изобщо — освен ако разбира се нямате много документи, където id=59
. В такъв случай може да е по-добре със съставен ключ на { id: 1, deliver_area: '2dsphere' }
.