This is dependent on the O/S, but generally filesystem cache will be helpful for storing most recently accessed data files in memory (including collections and indexes in your
I have an older answer which could be a useful reference: Does the MongoDB 3.2 WiredTiger compression include stuff stored in RAM - Server Fault.
Aside from the WiredTiger cache, a
The general recommendation is to try to avoid accessing disk for commonly used data and indexes, as this is orders of magnitude slower than cache or memory access. However, it is not a strict rule and there are definitely access patterns where you may only need a subset of a particular index (for example, Indexes that hold only recent values in RAM).
Resource usage is highly variable depending on your workloads and use case, so the best way to predict usage is by testing with representative workload and environment. You can mitigate some concerns of becoming I/O bound by having faster disks or more available RAM.