You are designing an Azure Cosmos DB container for a smart home energy monitoring platform that receives real-time telemetry from active devices. The workload has the following characteristics:
* Write profile: High-volume write ingestion of hourly usage metrics ( writes/sec).
* Read profile: Frequent read queries searching for telemetry by device ID and a specific date range.
* Transactional boundary: The platform must run ACID transactions using transactional batches to calculate and update daily summary aggregates for a device on a specific day.
* Storage profile: Individual devices generate a high volume of data that must be retained indefinitely.
You need to configure the partitioning strategy to support the transactional requirements, avoid the hot partition problem, and prevent logical partitions from exceeding the limit.
Which two strategies should you implement?
- Create a synthetic partition key by concatenating the device ID and the date (such as `deviceId_date`) for each telemetry record.Cevap
- Execute the transactional batches with the partition key value set to the concatenated device ID and date of the target day.Cevap
- CUse the device ID as the partition key and configure session consistency to guarantee multi-document transaction isolation across the container.
- DUse the date as the partition key to group all device telemetry for a single day into the same logical partition.