I'm building an application for a single user, the user is mostly counting documents based on certain criteria. The data are hold on a server in memory (16 cores, 512GB RAM).
The data are in a single collection of documents with a typical depth of 3 and the size of the JSON range from 20 to 50KB. A typical query willfilter documents over three or four fields, but they could be significantly more complex.
From my understanding of MongoDBs architecture, if I want to obtain the best performance, I should split my data between 16 shards, 1 per core. Am I right in my assumption?