A company is designing a global booking application for hotel reservations. The application must support:
- Sub-10ms read and write response times for users worldwide.
- High-throughput write ingestion of reservation records.
- Resilience against regional outages without requiring manual failover.
- Queries that primarily retrieve individual booking details using a unique booking ID, and secondary queries that list all bookings by hotel.
You need to design the Azure Cosmos DB NoSQL solution. Which two configurations should you recommend to meet the requirements?
- Enable multi-region writes and configure the container's partition key using the booking ID.Cevap
- Configure the Azure Cosmos DB account to replicate across multiple regions and enable service-managed failover.Cevap
- CConfigure the container's partition key using the hotel country code.
- DDeploy the database account to use single-region locally redundant storage (LRS) to minimize write replication latency.
- EGenerate a Shared Access Signature (SAS) token with a lifetime of 5 years to authenticate client application instances.
Cevap
Enable multi-region writes, configure the container's partition key using the booking ID, replicate the account across multiple regions, and enable service-managed failover.
The correct architecture uses a high-cardinality partition key (booking ID) to distribute operations evenly across physical partitions, avoiding throttling. To meet the latency and availability goals, the Azure Cosmos DB account must replicate to multiple regions with multi-region writes enabled, and service-managed failover must be enabled to automate disaster recovery.
Adım Adım Çözüm
Anahtar Kavram
Azure Cosmos DB partition key design and high-availability configuration