Question 298 of 997
Develop for Azure storagemediumMultiple ChoiceObjective-mapped

Quick Answer

The correct answer is PartitionKey = device ID and RowKey = timestamp formatted as inverted ticks. This design works because the PartitionKey groups all readings from a single IoT device into one partition, enabling the query to target a specific partition directly rather than scanning across multiple partitions. The RowKey, using inverted ticks (DateTime.MaxValue.Ticks minus the actual timestamp), ensures that more recent readings sort first and that a one-hour time range can be retrieved as a contiguous range scan within that single partition, leveraging Azure Table Storage’s lexicographic ordering for efficient range queries. On the AZ-204 exam, this tests your understanding of how PartitionKey and RowKey design directly impacts query performance and cost, especially for IoT workloads with time-series data. A common trap is using timestamp alone as the RowKey without inversion, which would scatter recent data across the partition and require full scans. Memory tip: think “device first, time inverted” — the device ID locks the partition, and inverted ticks keep recent data together for fast range queries.

AZ-204 Develop for Azure storage Practice Question

This AZ-204 practice question tests your understanding of develop for azure storage. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

You are designing an Azure Table Storage table to store temperature readings from IoT devices. Each reading includes a device ID (string), timestamp (datetime), temperature value, and location. You need to optimize the table design for this query: "Retrieve all temperature readings for a specific device ID within a given one-hour time range." The query must be efficient and minimize partition scans. Which PartitionKey and RowKey combination should you use?

Clue words in this question

Noticing these words before you look at the options changes how you read each choice.

  • Clue: "minimum / minimize"

    Why it matters: Asks for the least resource use — fewest addresses, smallest subnet, lowest overhead. Eliminate over-provisioned options even if they would technically work.

Question 1mediummultiple choice
Read the full NAT/PAT explanation →

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

PartitionKey = device ID, RowKey = timestamp (formatted as inverted ticks)

Option A is correct because using device ID as the PartitionKey ensures all readings for a specific device are in the same partition, allowing efficient point queries. Using timestamp formatted as inverted ticks (e.g., DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks) as the RowKey enables range queries within a one-hour window by leveraging the lexicographic ordering of RowKey values, minimizing partition scans.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • PartitionKey = device ID, RowKey = timestamp (formatted as inverted ticks)

    Why this is correct

    All readings for a device are in one partition; the sorted RowKey enables a point query range scan, minimizing partition scans.

    Clue confirmation

    The clue word "minimum / minimize" in the question point toward this answer.

    Related concept

    Read the scenario before looking for a memorised answer.

  • PartitionKey = timestamp (rolled up to day), RowKey = device ID

    Why it's wrong here

    This scatters a device’s data across many partitions, requiring a full partition scan for the time range.

  • PartitionKey = location, RowKey = device ID

    Why it's wrong here

    Queries for a specific device would need to search all partitions that contain that device’s data, inefficient.

  • PartitionKey = device ID + timestamp (composite), RowKey = empty

    Why it's wrong here

    A composite PartitionKey loses the ability to perform an efficient range query on timestamp within a partition; each combination is a separate partition.

Common exam traps

Common exam trap: answer the scenario, not the keyword

The trap here is that candidates often choose a composite key (Option D) thinking it uniquely identifies rows, but they overlook that Azure Table Storage requires RowKey for range queries, and an empty RowKey prevents efficient filtering within a partition.

Detailed technical explanation

How to think about this question

Azure Table Storage uses a hash of the PartitionKey to distribute data across nodes; thus, a single PartitionKey value ensures all data resides on the same node, enabling fast point and range queries. The inverted ticks technique ensures that more recent timestamps sort first in RowKey order, which is useful for time-series data where you often query the latest readings. A subtle behavior is that RowKey range queries are lexicographic, so using a standard timestamp string (e.g., '2025-03-20T10:00:00') works but inverted ticks provide better performance for descending time queries.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Related practice questions

Related AZ-204 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free AZ-204 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this AZ-204 question test?

Develop for Azure storage — This question tests Develop for Azure storage — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: PartitionKey = device ID, RowKey = timestamp (formatted as inverted ticks) — Option A is correct because using device ID as the PartitionKey ensures all readings for a specific device are in the same partition, allowing efficient point queries. Using timestamp formatted as inverted ticks (e.g., DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks) as the RowKey enables range queries within a one-hour window by leveraging the lexicographic ordering of RowKey values, minimizing partition scans.

What should I do if I get this AZ-204 question wrong?

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Are there clue words in this question I should notice?

Yes — watch for: "minimum / minimize". Asks for the least resource use — fewest addresses, smallest subnet, lowest overhead. Eliminate over-provisioned options even if they would technically work.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

3 more ways this is tested on AZ-204

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. You are designing a solution that stores customer order data in Azure Table Storage. The data includes OrderID (string), CustomerID (string), OrderDate (datetime), and TotalAmount (decimal). You need to query orders for a specific customer within a date range efficiently. Which partition key and row key design should you use?

easy
  • A.PartitionKey = OrderDate, RowKey = OrderID
  • B.PartitionKey = CustomerID, RowKey = OrderDate (inverted ticks for descending order)
  • C.PartitionKey = OrderDate, RowKey = CustomerID
  • D.PartitionKey = OrderID, RowKey = CustomerID

Why B: Option B is correct because Azure Table Storage queries are most efficient when they use PartitionKey for exact matches and RowKey for range scans. By setting PartitionKey = CustomerID, all orders for a specific customer are stored in the same partition, allowing fast retrieval. Using RowKey = OrderDate (inverted ticks for descending order) enables efficient date-range filtering within that partition, as Azure Table Storage supports range queries on RowKey.

Variation 2. You are developing a solution that uses Azure Table Storage to store time-series data. You need to query data for a specific device within a time range efficiently. Which two properties should you use as the PartitionKey and RowKey?

medium
  • A.PartitionKey = timestamp, RowKey = reverse deviceId
  • B.PartitionKey = timestamp, RowKey = deviceId
  • C.PartitionKey = deviceId, RowKey = timestamp
  • D.PartitionKey = deviceId, RowKey = reverse timestamp

Why C: Option C is correct because using deviceId as the PartitionKey ensures all data for a specific device is stored in the same partition, enabling efficient point queries. Using timestamp as the RowKey allows range queries within a time range for that device, as RowKey is sorted lexicographically within a partition. This design optimizes query performance by minimizing partition scans and leveraging Azure Table Storage's natural ordering.

Variation 3. You need to store temperature readings from IoT devices in Azure Table Storage. Each reading includes a device ID (string), timestamp (datetime), temperature value, and location. You must optimize for the query: "Retrieve all temperature readings for a specific device ID within a given one-hour time range." Which PartitionKey and RowKey combination should you use?

medium
  • A.PartitionKey = DeviceId, RowKey = Timestamp
  • B.PartitionKey = Location, RowKey = DeviceId
  • C.PartitionKey = Temperature, RowKey = Timestamp
  • D.PartitionKey = DeviceId + Timestamp, RowKey = empty

Why A: Option A is correct because Azure Table Storage queries are most efficient when the PartitionKey and RowKey are chosen to match the query pattern. By using DeviceId as the PartitionKey, all readings for a specific device are stored in the same partition, enabling fast partition-level scans. Using Timestamp as the RowKey allows efficient range queries within a one-hour window using RowKey comparisons, which is the optimal design for time-range queries on a single device.

Last reviewed: Jun 11, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This AZ-204 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-204 exam.