Question

Difficulty: HardAzure Cosmos DB and NoSQL Solutions

You are designing a globally distributed data storage solution for an international supply chain tracking system. The system must ingest telemetry data from 2,000,0002,000,000 active tracking devices. The workload is write-heavy, consisting of 85%85\% writes and 15%15\% reads. The data must be accessible with sub-10 ms10\text{ ms} read and write latencies globally. The architecture must guarantee 99.999%99.999\% write availability and support regional disaster recovery. You decide to use Azure Cosmos DB for NoSQL with multi-region writes enabled. Which configuration should you recommend to meet the requirements while preventing performance degradation and ensuring disaster resilience?

  1. Configure Azure Cosmos DB with multi-region writes. Select DeviceId as the partition key. Configure Session consistency, enable zone-redundant backup storage (ZRS) for recovery, and use short-lived Shared Access Signatures (SAS) linked to a stored access policy for diagnostic data export.Answer
  2. B
    Configure Azure Cosmos DB with multi-region writes. Select DeviceStatus as the partition key. Configure Session consistency, enable zone-redundant backup storage (ZRS) for recovery, and use short-lived Shared Access Signatures (SAS) linked to a stored access policy for diagnostic data export.
  3. C
    Configure Azure Cosmos DB with multi-region writes. Select DeviceId as the partition key. Configure Session consistency, enable locally redundant backup storage (LRS) for recovery, and use short-lived Shared Access Signatures (SAS) linked to a stored access policy for diagnostic data export.
  4. D
    Configure Azure Cosmos DB with multi-region writes. Select DeviceId as the partition key. Configure Session consistency, enable zone-redundant backup storage (ZRS) for recovery, and generate an ad-hoc Shared Access Signature (SAS) token with a two-year expiration duration for diagnostic data export.

Answer

Configure Azure Cosmos DB with multi-region writes, using DeviceId as the partition key, Session consistency, zone-redundant backup storage (ZRS), and short-lived Shared Access Signatures (SAS) linked to a stored access policy.
The correct configuration uses DeviceId as the partition key to ensure a high-cardinality distribution of data, preventing hot partitions. It uses Session consistency which is fully supported under multi-region write configurations in Azure Cosmos DB. Zone-redundant storage (ZRS) backups guarantee regional disaster resilience, and SAS tokens governed by a stored access policy ensure secure, revocable access to diagnostic exports.

Step-by-Step Solution

1
Analyze partition key cardinality requirements.
DeviceId is selected instead of DeviceStatus to guarantee high cardinality and even write distribution.
Low cardinality partition keys like DeviceStatus lead to hot partitions, which cause RU throttling.
2
Verify consistency level support for multi-region writes.
Session consistency is selected because it is supported with multi-region writes, whereas Strong and Bounded Staleness are not.
Azure Cosmos DB multi-region writes only support Session, Consistent Prefix, and Eventual consistency.
3
Select appropriate backup storage redundancy and security policy.
Zone-redundant storage (ZRS) is chosen for backups to handle datacenter outages, and SAS tokens are associated with stored access policies to allow revocation.
LRS lacks disaster resilience, and long-lived ad-hoc SAS tokens introduce security vulnerabilities.

Key Concept

Azure Cosmos DB partition key selection, consistency levels under multi-region writes, and storage backup redundancy.
Rate this question