Можете да намерите „обекта с максималната стойност на полето“ в spring-data-mongodb. Mongo ще оптимизира комбинациите за сортиране/ограничаване, АКО полето за сортиране е индексирано (или полето @Id). В противен случай все още е доста добър, защото ще използва алгоритъм top-k и ще избегне глобалното сортиране (mongodb sort doc) . Това е от пример на Mkyong но първо правя сортирането и задавам ограничението на една секунда.
Query query = new Query();
query.with(new Sort(Sort.Direction.DESC, "idField"));
query.limit(1);
MyObject maxObject = mongoTemplate.findOne(query, MyObject.class);