Hi @Dushyant_Bangal,
The optimisation guide states that all possible filtering needs to be done in earliest stage possible.
MongoDB can’t read single fields if they are not indexed. All documents of the first stage are read into memory and passed to the the next stage in memory (excluding sort stage which can use index) .
The cardinality within an index can play a smaller role if the index cannot support the sort. Having ts as the first field will result in a blocking in memory sort.
You can index your documents how you want of course but I would recommend { field1: 1, ts : 1}
Thanks
Pavel