Estimate RU/s using the Azure Cosmos DB capacity planner - API for NoSQL

APPLIES TO: NoSQL

Note

If you're planning a data migration to Azure Cosmos DB and all that you know is the number of vCores and servers in your existing sharded and replicated database cluster, read about estimating request units using vCores or vCPUs.

To optimize cost and performance, it's essential to configure your Azure Cosmos DB databases and containers with the right amount of provisioned throughput, or Request Units (RU/s). This article describes how to use the Azure Cosmos DB capacity planner to estimate the required RU/s and cost of your workload when using Azure Cosmos DB for NoSQL. If you're using Azure Cosmos DB for MongoDB, see Estimate RU/s - Azure Cosmos DB for MongoDB.

Capacity planner modes

Mode Description
Basic Provides a quick, high-level RU/s and cost estimate. This mode assumes the default Azure Cosmos DB settings for indexing policy, consistency, and other parameters.

Use basic mode for a quick, high-level estimate when you are evaluating a potential workload to run on Azure Cosmos DB. To learn more, see how to estimate cost with basic mode.

Estimate provisioned throughput and cost using basic mode

To get a quick estimate for your workload using the basic mode, open the capacity planner. Enter the following parameters based on your workload:

Input Description
API Choose Azure Cosmos DB for NoSQL.
Number of regions Azure Cosmos DB is available in all Azure China regions. Select the number of regions required for your workload. You can associate any number of regions with your Azure Cosmos DB account. For more information, see Distribute your data multiple-regionally with Azure Cosmos DB.
Multi-region writes If you enable multi-region writes, your application can read and write to any Azure region. If you disable multi-region writes, your application can write data to a single region.

Enable multi-region writes if you expect to have an active-active workload that requires low latency writes in different regions. For example, an IOT workload that writes to the database at high volumes in different regions. Multi-region writes guarantee 99.999% read and write availability. Multi-region writes require more throughput when compared to the single write regions. For more information, see Optimize multi-region cost in Azure Cosmos DB .
Total data stored in transactional store Total estimated data stored, in GB, in the transactional store in a single region.
Use analytical store Choose On if you want to use analytical store. Enter the Total data stored in analytical store, which represents the estimated data stored, in GB, in the analytical store in a single region.
Item size The estimated size of the data item, for example, document.
Point reads/second in max-read region Number of point read operations expected per second per region. Point reads are the key/value lookup on a single item ID and a partition key. For more information about point reads, see Reading data: point reads and queries.
Creates/second across all regions Number of create operations expected per second per region.
Updates/second across all regions Number of update operations expected per second per region. When you choose automatic indexing, the estimated RU/s for the update operation is calculated as one property being changed per an update.
Deletes/second across all regions Number of delete operations expected per second per region.
Queries/second across all regions Number of queries expected per second per region. The average RU charge to run a query is estimated at 10 RUs.

After you fill in the required details, select Calculate. The Cost Estimate table shows the total cost for storage and provisioned throughput. You can expand the Show Details link to get the breakdown of the throughput required for different CRUD and query requests. Each time you change the value of any field, select Calculate to recalculate the estimated cost.

Screenshot of capacity planner basic mode.

Next steps