Courseiva

DP-900 Describe core data concepts Practice Question

A regional utility is designing a data platform. Engineers will capture continuous readings from smart meters that arrive as a stream and must be analyzed within seconds for anomaly detection. Separately, billing analysts need to run complex queries joining customer contracts with historical usage, and those queries must always return consistent results even if several billing tables are updated in the same operation. Which two data processing approaches are most appropriate for these requirements? (Choose two.)

⚠ Common exam trap

The trap here is treating batch processing as adequate for near real-time meter analysis, or assuming a data lake or cache can substitute for the transactional consistency the billing joins require.

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

✓

A relational transactional workload for the billing joins, ensuring consistent results across multi-table updates

The two requirements have distinct characteristics: continuous meter readings needing seconds-level analysis map to stream processing, while billing joins across multiple tables with guaranteed consistency map to a relational transactional workload. Stream processing minimizes latency, and ACID transactions ensure that multi-table updates either commit fully or roll back, keeping query results consistent. The remaining approaches either add latency, defer structure, or lack transactional guarantees.

Answer analysis

Option-by-option breakdown

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

  • ✓

    A relational transactional workload for the billing joins, ensuring consistent results across multi-table updates

    Why this is correct

    The billing analysts need complex joins and guaranteed consistency when several tables are updated together. A relational transactional workload provides ACID semantics, so a multi-table update either fully commits or fully rolls back, and queries see a consistent snapshot. This directly satisfies the requirement that results remain consistent during concurrent updates, which non-transactional stores do not guarantee by default.

  • ✗

    A schema-on-read data lake for the billing joins to defer structure until query time

    Why it's wrong here

    A schema-on-read data lake stores raw files and applies structure only when queried, which is useful for exploration but does not provide transactional consistency across multiple tables. The billing requirement explicitly demands consistent results when several tables are updated in one operation, a guarantee tied to transactional systems. Deferring structure also pushes validation into every query, increasing the risk of inconsistent interpretations of contract and usage data.

  • ✗

    A key-value cache for the billing joins to speed up repeated lookups of contract rows

    Why it's wrong here

    A key-value cache optimizes point lookups by key and does not perform relational joins or enforce multi-table transactional consistency. It can accelerate reads of individual contract records, but the analysts need joins between contracts and historical usage with consistent results during concurrent updates. Using a cache as the primary store for billing would sacrifice the ACID guarantees the scenario requires, making it unsuitable as the chosen approach.

  • ✓

    Stream processing for the smart meter readings to detect anomalies within seconds

    Why this is correct

    The meter readings arrive continuously and must be analyzed within seconds, which is the defining characteristic of stream processing. Stream engines ingest events as they arrive and evaluate windows or rules in near real time, enabling prompt anomaly detection. Batch processing would introduce latency by waiting to accumulate data, missing the seconds-level requirement. Stream processing directly matches the temporal constraint stated for the meter data.

  • ✗

    Batch processing for the smart meter readings to aggregate them once per day

    Why it's wrong here

    Batch processing collects data over a period and processes it as a group, which inherently delays results until the batch runs. The utility needs anomaly detection within seconds of each reading, so a daily aggregation would arrive far too late to be useful. Batch is suitable for the billing reports, not for the near real-time meter analysis, so applying it to the readings contradicts the stated latency requirement.

About these practice questions

One of 851 original DP-900 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Microsoft exam blueprint

This DP-900 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 DP-900 exam.