The WiredTiger cache uses only a part of the RAM; the remainder is available for other system services and MongoDB calculations. The size of the RAM used for caching is calculated as
50% of (RAM size - 1 GB)with a minimum of 256 MB. For example, a 1 GB RAM instance uses 256 MB, a 2 GB RAM instance uses 512 MB, a 4 GB instance uses 1.5 GB, and so on.
You get the best performance if your working set fits into the cache, but it is not required. The working set is the size of all indexes plus the size of all frequently accessed documents.
To view the size of all databases' indexes and documents, you can use a similar script as described in the MongoDB Atlas documentation. You must estimate what percentage of all documents are accessed at the same time based on your knowledge of the workload.
Additionally, each connection can use up to 1 MB of RAM that is not used by WiredTiger.
The disk contains:
- OpLogs for the last 24 hours. The size of these depends on your workload. There is no upper limit, so they can grow quite large. But they are removed after 24 hours on their own.
- The data itself.
Operating system and applications are kept separately, outside of the configured storage, and are managed by IONOS.
Connection Limits: As each connection requires a separate thread, the number of connections is limited to 51200 connections.
CPU: The total upper limit for CPU cores depends on your quota. A single instance can't exceed 16 cores.
RAM: The total upper limit for RAM depends on your quota. A single instance can't exceed 64 GB.
Storage: The upper limit for storage size is 1280 GB.
Backups: Storing cluster backups is limited to the last 7 days. Deleting a cluster also immediately removes all backups of it.