Database
[{"time":ISODate("2013-08-27T11:19:22Z"),"service":"POST Service A HTTP/1.1","latency":403},{"time":ISODate("2013-08-27T11:19:24Z"),"service":"POST Service B HTTP/1.1","latency":1022},{"time":ISODate("2013-08-27T11:22:10Z"),"service":"POST Service A HTTP/1.1","latency":455}]
Query
db.collection.aggregate([{$setWindowFields:{partitionBy:{$dayOfMonth:"$time"},sortBy:{latency:1},output:{latencyRank:{$rank:{}},partitionLength:{$sum:1}}}},{$set:{percentile:{"$divide":["$latencyRank","$partitionLength"]}}}])