I got exceeds maximum document size problem exception by the query as follows,
pipe = [
{\"$match\": { \"birthday\":{\"$gte\":datetime.datet
By default the result of aggregations are returned to you in a single BSON document, which is where the size restriction comes from. If you need to return more than that you can either:
have the results be output to a collection. You do this by finishing your pipeline with
{"$out": "some-collection-name"}
You then query that collection as normal (you'll need to delete it yourself when you're done with it)
have the results returned as a cursor, by specifying useCursor=True when you call aggregate.
Both of these options require mongodb 2.6: if you are still running mongodb 2.4 then this is just a fundamental limit of aggregations.