Fix IOPS Issues¶
On this page
Disk I/O % Utilization
alerts indicate that percentage of
time during which requests are being issued reaches a specified
threshold. This threshold is specified when the alert is created.
The utilization measurements for the following alerts include requests from all processes, not just MongoDB processes.
Alert Conditions¶
You can configure the following alert conditions in the project-level alert settings page to trigger alerts.
Disk I/O % utilization on Data Partition
occurs if the percentage of time during which requests are being
issued to any partition that contains the MongoDB collection
data meets or exceeds the threshold.
Disk I/O % utilization on Index Partition
occurs if the percentage of time during which requests are being
issued to any partition that contains the MongoDB index data meets
or exceeds the threshold.
Disk I/O % utilization on Journal Partition
occurs if the percentage of time during which requests are being
issued to the partition that contains the MongoDB
journal meets or exceeds the threshold.
Common Triggers¶
A few common events may lead to high Disk I/O % Utilization and trigger these alerts:
- Unoptimized queries.
- A one-time event which causes a spike in disk utilization such as an index build.
Fix the Immediate Problem¶
Consider a few possible actions to help resolve
Disk I/O % Utilization
alerts:
- Optimize your queries.
- Use the Atlas Performance Advisor to view slow queries and suggested indexes.
Review Indexing Strategies for possible further indexing improvements.
NoteYou may need to temporarily increase your cluster IOPS to create new indexes. To change a cluster's IOPS, go to the Cluster Configuration page and:
Cloud ProviderTierPossible Actions
AWS
M10
,M20
AWS
M30
or largerGoogle Cloud
M10
or largerAzureM10
or larger- Analyze Query Performance to review how your queries are using your indexes.
- Increase hardware resources, such as instance size and IOPS, in the Cluster Configuration Page.
Implement a Long-Term Solution¶
Disk IOPS Burst Credits for Atlas Clusters on AWS¶
Atlas clusters deployed to AWS that meet the following criteria may use burst credits when exceeding configured IOPS thresholds during periods of high disk I/O:
- Clusters where the Provision IOPS setting is disabled.
Clusters configured with less than 1 TB of storage capacity.
NoteBy default, all clusters smaller than the
M140
cluster tier are configured with less than 1 TB of storage capacity.
AWS uses burst credits to temporarily increase IOPS beyond the configured threshold during periods of high disk I/O activity. These clusters refresh spent credits during periods of low disk I/0 activity. When burst credits are exhausted, AWS limits IOPS for these clusters to the configured threshold. This may result in decreased disk I/O performance on these clusters and a high IOWait curve in the Normalized System CPU metric.
Disk IOPS Burst Credits for Atlas Clusters on Azure¶
Atlas clusters deployed to Azure may also use credit-based bursting, but the disk will burst only if it has burst credits accumulated in its credit bucket. Azure also offers an on-demand bursting model, where the disk bursts whenever its needs exceed its current capacity.
See the Azure Disk Bursting documentation for more information about how bursting for Azure disks works.
Conserve Burst Credits¶
If you regularly exceed your configured IOPS threshold, you can avoid depleting your burst credits by increasing your configured IOPS with any of the following actions:
- Increase Cluster IOPS to increase the cluster's IOPS threshold.
- Enable the Provision IOPS configuration option option. Clusters configured with this option use Provisioned IOPS SSD storage volumes, which do not use burst credits and offer greater IOPS thresholds. This option only applies to Atlas clusters on AWS.
- Increase Storage Capacity. The IOPS threshold increases as you increase storage capacity. Clusters configured to use at least 1 TB of storage have baseline IOPS performance that is equal to or greater than the maximum burst performance. These volumes do not deplete burst credit balances.
Upgrade Cluster Tier. Larger cluster tiers include higher IOPS thresholds.
NoteCluster tiers
M140
and larger are deployed with at least 1 TB of storage capacity by default. Clusters with 1 TB or more of storage capacity do not deplete burst credit balances.
Monitor Your Progress¶
These are a few possible methods to observe high Disk I/O % Utilization:
- The Util% graph in the cluster metrics displays a high value.
- The disk IOPS use from the Disk IOPS graph in the cluster metrics exceeds the provisioned IOPS from the Atlas cluster configuration page.
- The Normalized System CPU metric has a high IOWait curve. IOWait measures the percentage of time the CPU is idle and waiting for an I/O operation to complete. The Normalized System CPU chart is located under the Hardware Metrics section of the Metrics tab.