Hi Lahori,
Can you elaborate on the performance bottleneck you are seeing? What is your MongoDB version, which Storage Engine is utilized, memory usage and CPU statistics? Any additional information that you can provide about the performance bottleneck you are experiencing will be helpful.
As you know, schema design can be quite complex and careful consideration should be taken when implementing this initial step. Unlike relational database design where a normal form is recommended for many applications, MongoDB schema design depends entirely on your use case. What works for one case may not work for another case even though they look similar at a glance.
There are several facets of schema design that you may want to take into consideration. For example:
holdings
field strictly append-only? e.g., data will never be deleted from that field?holdings
field need to be sorted in any way?It might be worth investigating whether Sharding would be applicable to your use case. This could allow you to horizontally scale your implementation and take advantage of spreading the workload across multiple machines to improve the overall performance of your deployment.
The following links might also be helpful:
Regards,
Chris