In this chapter, we will analyze many aspects that allow us to design and maintain scalable architectures with Cosmos DB. We will use our sample application to understand how many important things work, but we will also work with other examples to understand complex topics related to scalability.
In this chapter, we will do the following:
- Understand request units and how they affect billing
- Dynamically adjust throughput for a collection with the Azure portal
- Work with client-side throughput management
- Understand rate limiting and throttling
- Track consumed request units with client-side code
- Understand the options for provisioning request units
- Learn partitioning strategies
- Deploy to multiple regions
- Understand the five consistency levels
- Take advantage of regional failover
- Understand indexing in Cosmos DB
- Check indexing policies...