Courseiva

Microsoft Azure Data Fundamentals DP-900 (DP-900) — Questions 826–851

851 questions total · 12pages · All types, answers revealed

Page 11

Page 12 of 12

826
MCQmedium

A university's enrollment system stores data in a single table with columns: EnrollmentID, StudentID, StudentName, CourseID, CourseName, and Grade. Students can take multiple courses, and each course has multiple students. The team notices data redundancy: StudentName is repeated for each enrollment of the same student, and CourseName is repeated for each enrollment in the same course. They want to reduce redundancy while preserving the ability to query all enrollments with student and course details. What is the most appropriate design approach?

A.Keep the single table but use compression to reduce storage
B.Create a view that mirrors the single table but physically store data in separate normalized tables
C.Normalize the schema by creating separate Students, Courses, and Enrollments tables with foreign keys
D.Denormalize by adding more columns to the single table
AnswerC

Normalization decomposes the unnormalized enrollment table into Student, Course, and Enrollment relations, moving StudentName into Students and CourseName into Courses so each value is stored only once. The Enrollments table then holds only foreign keys (StudentID, CourseID) plus enrollment-specific attributes, eliminating the partial dependencies on composite keys and the transitive dependency of CourseName on CourseID. This design enforces referential integrity via foreign key constraints, preventing orphaned records and reducing update anomalies to a single-row change.

Why this answer

Normalizing the schema into separate Students, Courses, and Enrollments tables eliminates data redundancy by storing each student's name and each course's name only once, while using foreign keys to maintain relationships. This preserves the ability to query all enrollments with student and course details via JOIN operations, which is the standard relational database design principle for reducing anomalies and storage overhead.

Exam trap

The trap here is that candidates confuse views with physical schema changes, thinking a view can magically eliminate redundancy without altering table structure, or they mistakenly believe compression is a substitute for proper normalization.

How to eliminate wrong answers

Option A is wrong because compression reduces storage size but does not eliminate logical data redundancy; repeated StudentName and CourseName values remain, leading to update anomalies and inconsistency risks. Option B is wrong because a view is a virtual table that does not physically store data; creating a view over a single table does not reduce redundancy, and physically storing data in separate normalized tables would require changing the underlying schema, not just adding a view. Option D is wrong because denormalization adds more columns, which increases redundancy and storage waste, contradicting the goal of reducing redundancy.

827
MCQhard

A data engineer loads raw log files into a storage system. The structure of the data is interpreted at the time of reading, allowing queries to apply schema on the fly without preprocessing. This approach is best described as:

A.Schema-on-write
B.Schema-on-read
C.Data warehouse
D.Data virtualization
AnswerB

Schema-on-read applies a logical structure to data only when it is accessed by a query engine, such as Azure Synapse Serverless SQL, Spark, or a metastore catalog that overlays schema metadata on raw files. Raw log files can be stored as-is in a data lake in open formats like JSON, CSV, or Parquet, and the schema is interpreted or inferred at read time. This is the correct answer because it matches the data engineer's workflow of loading raw files into storage without imposing structure until analysis.

Why this answer

Schema-on-read means the data is stored in its raw, unstructured form, and the schema is applied dynamically when the data is queried. This is exactly what happens when raw log files are loaded into a storage system like Azure Data Lake Storage and queried with tools like Azure Synapse Serverless SQL or Apache Spark, which infer the schema at query time without requiring preprocessing.

Exam trap

The trap here is confusing schema-on-read with data virtualization, as both involve querying data without moving it, but schema-on-read specifically refers to interpreting the structure at read time from raw files, not abstracting multiple sources.

How to eliminate wrong answers

Option A is wrong because schema-on-write requires defining and enforcing a schema before data is written, which contradicts the scenario of interpreting structure at read time. Option C is wrong because a data warehouse typically uses schema-on-write with a predefined, optimized schema for structured data, not raw log files with on-the-fly interpretation. Option D is wrong because data virtualization provides a unified view of data from multiple sources without moving it, but it does not specifically describe the schema-on-read approach where the structure is interpreted at query time from raw storage.

828
MCQmedium

Refer to the exhibit. An administrator creates a storage account with the Hot tier and then creates a container with the Cool tier. Data is uploaded to the container. Which access tier applies to the uploaded blobs by default?

A.Hot, because the storage account tier is Hot.
B.No tier; blobs are not charged until accessed.
C.Archive, because no tier is set.
D.Cool, because the container's default tier is Cool.
AnswerD

When a blob is uploaded without an explicit access tier, Azure applies the default access tier of its parent container. Here the container's default tier is Cool, so the blob inherits Cool regardless of the storage account's own tier setting. This inheritance ensures consistent billing for all blobs in the container that do not have a per-blob tier override. The blob's effective tier is Cool, making this answer correct.

Why this answer

When a container is created with a default access tier, that tier is inherited by any blob uploaded into the container unless the blob explicitly specifies a different tier at upload time. Since the container was created with the Cool tier, uploaded blobs default to Cool regardless of the storage account's Hot default. The account-level tier only serves as the default for containers that do not specify their own tier.

Exam trap

DP-900 often tests the misconception that the storage account tier always dictates blob tiering, when in fact container-level defaults override the account default for newly uploaded blobs.

How to eliminate wrong answers

Option A is wrong because the storage account's Hot tier is only the default for containers created without an explicit tier — a container-level tier overrides it for blobs uploaded into that container. Option B is wrong because every block blob in a general-purpose v2 or Blob Storage account always resides in an access tier (Hot, Cool, Cold, or Archive); there is no 'no tier' state, and billing is based on the tier plus capacity/operations. Option C is wrong because Archive is never applied implicitly — it must be explicitly set on the blob or via lifecycle management policy, and it would make blobs inaccessible without rehydration.

829
MCQhard

A company stores customer data in Azure Table Storage. They need to query by a combination of partition key (customer region) and row key (customer ID). Which query pattern is most efficient?

A.Query using RowKey only
B.Scan all entities
C.Query using both PartitionKey and RowKey
D.Query using PartitionKey only
AnswerC

Querying with both PartitionKey and RowKey forms a point query that uniquely identifies a single entity, since their combination is the primary key of the table. The PartitionKey narrows the search to a specific partition, and the RowKey directly locates the entity within that partition's index. This is the most efficient, lowest-latency, and least costly operation Azure Table Storage supports for data retrieval.

Why this answer

In Azure Table Storage, the most efficient query specifies both PartitionKey and RowKey because it targets a single entity directly. The PartitionKey determines the partition, and the RowKey uniquely identifies the entity within that partition. This point query is the fastest and most cost-effective, as it avoids scanning multiple partitions or entities.

Exam trap

The trap is thinking that PartitionKey alone is sufficient for efficiency, but the exam expects recognition that both keys are needed for the fastest point query.

How to eliminate wrong answers

Option A is wrong because querying by RowKey only requires a full table scan across all partitions, which is inefficient and slow. Option B is wrong because scanning all entities is the least efficient and most expensive operation. Option D is wrong because querying by PartitionKey only retrieves all entities in that partition, which may be many, and requires further filtering, making it less efficient than specifying both keys.

830
MCQmedium

A data scientist needs to train a machine learning model using data stored in Azure Data Lake Storage. They want to use a collaborative notebook environment with built-in experiment tracking. Which Azure service should they use?

A.Azure Synapse Analytics
B.Azure Databricks
C.Azure Machine Learning
D.Azure Data Studio
AnswerC

Azure Machine Learning is the correct choice because it is Microsoft's dedicated cloud service for the complete machine learning lifecycle. It provides managed notebooks for training, integrated experiment tracking with metrics and parameters, a central model registry, and one-click deployment to compute targets. This end-to-end support makes it specifically designed for data scientists to train, track, and operationalize models in a production context.

Why this answer

Azure Machine Learning provides a collaborative notebook environment (Jupyter notebooks) with built-in experiment tracking, model management, and automated ML capabilities. It is the correct choice for training machine learning models with data from Azure Data Lake Storage while tracking experiments.

Exam trap

Microsoft often tests the distinction between general analytics platforms (Synapse, Databricks) and dedicated ML services (Azure Machine Learning), where candidates mistakenly choose Databricks for its notebook interface without recognizing the specific requirement for built-in experiment tracking.

How to eliminate wrong answers

Option A is wrong because Azure Synapse Analytics is an analytics service focused on big data and data warehousing, not a dedicated machine learning platform with built-in experiment tracking. Option B is wrong because Azure Databricks is a big data and AI platform based on Apache Spark, but it does not have native experiment tracking like Azure Machine Learning; it requires additional tools like MLflow for that purpose. Option D is wrong because Azure Data Studio is a database management and query tool for SQL Server and Azure SQL databases, not a collaborative notebook environment for machine learning with experiment tracking.

831
MCQmedium

A global social media platform allows users to like posts. The platform is designed to prioritize availability and partition tolerance over strong consistency across its globally distributed Azure Cosmos DB instance. When a user likes a post, the like count may not be immediately visible to all users, but it will eventually become consistent across all regions. Which consistency model does this application follow?

A.Strong consistency
B.Bounded staleness consistency
C.Session consistency
D.Eventual consistency
AnswerD

Eventual consistency is the weakest consistency level, prioritizing availability and low latency. It guarantees that if no new writes are made, all replicas will converge to the same state over time. This aligns with the platform's design goals.

Why this answer

Eventual consistency is the correct choice because the platform prioritizes availability and partition tolerance (AP from the CAP theorem) over strong consistency. In Azure Cosmos DB, eventual consistency guarantees that all replicas will converge to the same value over time without any ordering guarantees, which matches the scenario where like counts are not immediately visible but become consistent eventually.

Exam trap

The trap here is that candidates often confuse 'eventual consistency' with 'session consistency' because both involve delays, but session consistency is scoped to a single client session and provides stronger guarantees like monotonic reads, whereas eventual consistency has no such session-level guarantees and is the weakest model in Cosmos DB.

Why the other options are wrong

A

Strong consistency ensures that all reads reflect the most recent write, which contradicts the requirement for high availability and partition tolerance with eventual visibility of likes across regions.

B

Bounded staleness guarantees that reads lag behind writes by at most a fixed number of versions or time interval, but the question explicitly states 'eventually become consistent' with no bounded lag, which is the definition of eventual consistency.

C

Session consistency provides monotonic reads, writes, and read-your-writes guarantees within a single client session, but the question describes a scenario where consistency is relaxed across all users globally, not just within a session. The platform prioritizes availability and partition tolerance over strong consistency, which aligns with eventual consistency, not session consistency.

When would these options actually be correct?

A

A financial trading application requires that all users see the exact same account balance immediately after a transaction, even if it means lower availability during a partition. Strong consistency would be the correct choice.

B

An application requires that all reads are within a configurable staleness window (e.g., 5 seconds or 10 updates) from the latest write, but can tolerate some delay. For example, a stock ticker showing prices that must be no older than 1 second.

C

Session consistency would be correct for an application where a user updates their profile and expects to see their own changes immediately across devices, but other users may see stale data temporarily. For example, a user changes their display name and wants to see the update on their phone and laptop right away, while friends see the old name until the change propagates.

Why candidates pick the wrong answer

A

Candidates may assume that any database operation should be strongly consistent by default, not realizing that Cosmos DB offers multiple consistency levels to balance consistency, availability, and performance.

B

Candidates may confuse 'bounded staleness' with 'eventual consistency' because both allow stale reads, but they overlook the 'bounded' constraint that limits the staleness, which is not present in eventual consistency.

C

Candidates may confuse session consistency with eventual consistency because both allow temporary inconsistencies, but session consistency provides stronger guarantees within a session, which might seem like a middle ground. The phrase 'eventually become consistent' might be misinterpreted as session-based guarantees.

832
MCQeasy

A company operates an online store where customers place orders and the system immediately updates inventory and records payments. This workload is best described as:

A.OLAP (Online Analytical Processing)
B.OLTP (Online Transaction Processing)
C.Batch processing
D.Data warehousing
AnswerB

OLTP (Online Transaction Processing) is the correct workload because order placement involves multiple concurrent, short-duration transactions—inserting the order, adjusting inventory, and recording payment—that must each be executed atomically and with ACID guarantees. These systems use row-based, normalized storage to provide fast writes, strict data integrity, and very low response times even under heavy user concurrency. This directly matches the operational need for immediate, reliable processing of each customer action.

Why this answer

This workload is best described as OLTP because it involves real-time, high-frequency transactions that immediately update inventory and record payments. OLTP systems are designed for concurrent, atomic operations that maintain data integrity, which is exactly what an online store's order processing requires.

Exam trap

The trap here is that candidates confuse OLTP with batch processing because both involve data updates, but OLTP requires immediate, row-level transactions while batch processing defers updates to a scheduled window.

How to eliminate wrong answers

Option A is wrong because OLAP is used for complex analytical queries and aggregations over large historical datasets, not for real-time transactional updates. Option C is wrong because batch processing involves delayed, scheduled processing of data in bulk, whereas the scenario requires immediate updates. Option D is wrong because data warehousing is a repository for structured, historical data used for reporting and analysis, not for handling live transactional workloads.

833
MCQmedium

A media company stores video metadata in Azure Table Storage. Each video has a unique VideoID, and the application frequently queries for videos uploaded on a specific date. The current table uses PartitionKey = VideoID and RowKey = UploadDate. Queries filtering by UploadDate are slow and consume many transactions. Which design change will most optimize queries that retrieve all videos from a given date?

A.A. Use UploadDate as the RowKey only, but keep PartitionKey as VideoID.
B.B. Create a secondary index on UploadDate.
C.C. Change the PartitionKey to a date-based value (e.g., YYYY-MM-DD) and use VideoID as the RowKey.
D.D. Migrate the data to Azure Cosmos DB Table API for better indexing.
AnswerC

By using a date as the PartitionKey, all videos uploaded on the same date are stored in the same partition. A query filtering by date can then fetch all rows from that single partition using the PartitionKey, which is extremely fast and cost-efficient.

Why this answer

Azure Table Storage queries are most efficient when the PartitionKey is used as the primary filter. By changing the PartitionKey to a date-based value (e.g., YYYY-MM-DD), queries for all videos uploaded on a specific date become partition scans, which are fast and consume minimal transactions. Using VideoID as the RowKey still allows unique identification of each video within that date partition.

Exam trap

The trap here is that candidates often assume secondary indexes (like in SQL databases) exist in Azure Table Storage, or they think changing RowKey alone is sufficient, failing to realize that PartitionKey is the only partition-level filter and must align with the query pattern.

How to eliminate wrong answers

Option A is wrong because keeping PartitionKey as VideoID and only using UploadDate as RowKey does not help; queries filtering by UploadDate would still require a full table scan since the PartitionKey is not used in the filter. Option B is wrong because Azure Table Storage does not support secondary indexes; it only provides a single index on (PartitionKey, RowKey). Option D is wrong because migrating to Azure Cosmos DB Table API would not inherently optimize the query; the same partition key design issue would persist, and the cost and complexity of migration are unnecessary when a simple schema redesign solves the problem.

834
MCQeasy

You are designing a data pipeline for a social media analytics platform. The pipeline needs to ingest posts from multiple sources (Twitter, Facebook) in real time, transform the data by adding sentiment scores, and store the results in a data store for later analysis. The transformation logic is simple and can be expressed as a SQL query. You want to minimize coding effort. Which Azure service should you use for the transformation step?

A.Azure Data Factory
B.Azure Databricks
C.Azure Functions
D.Azure Stream Analytics
AnswerD

Azure Stream Analytics is a fully managed stream-processing service that queries live data using a SQL-like language without requiring custom code. It reads from high-throughput sources such as Event Hubs or IoT Hub, applies temporal windows, filters, joins, and aggregates, and writes results to Power BI, Azure SQL, Cosmos DB, or Data Lake Storage. Its declarative model and built-in time handling make it the natural choice for low-latency social media analytics, letting you continuously compute metrics like mentions, sentiment, or trending hashtags in near-real time.

Why this answer

Azure Stream Analytics is the correct choice because it is designed for real-time data processing with SQL-like query language, allowing you to transform streaming data (e.g., from Twitter and Facebook) by adding sentiment scores using simple SQL expressions without writing custom code. It integrates natively with Azure Event Hubs or IoT Hub for ingestion and outputs to Azure SQL Database, Cosmos DB, or Blob Storage for analysis, minimizing coding effort.

Exam trap

The trap here is that candidates often confuse Azure Data Factory (batch ETL) with real-time stream processing, or assume Azure Functions is simpler for SQL-like transformations, but Stream Analytics is the only service that combines real-time ingestion, SQL-based transformation, and minimal coding effort.

How to eliminate wrong answers

Option A is wrong because Azure Data Factory is an orchestration and ETL service for batch data movement and transformation, not designed for real-time stream processing; it cannot handle sub-second latency or continuous SQL-based transformations on live streams. Option B is wrong because Azure Databricks is a big data analytics platform that requires writing Spark code (Python, Scala, or SQL) and managing clusters, which involves more coding effort than a simple SQL query on a stream. Option C is wrong because Azure Functions is a serverless compute service for event-driven code execution, but it requires writing custom code (e.g., C#, JavaScript) for each transformation, and it lacks native SQL-based stream processing capabilities, making it less efficient for simple SQL transformations on real-time data.

835
MCQhard

A manufacturing company collects sensor data from factory equipment as a continuous stream of events ingested into Azure Event Hubs. Additionally, the company receives daily inventory CSV files uploaded to Azure Data Lake Storage Gen2. The analytics team needs to build near real-time dashboards that combine streaming sensor data with batch inventory data, and also support historical reporting by querying data directly in the data lake using SQL without moving it. Which Azure service should they choose as the primary analytics platform?

A.Azure Synapse Analytics
B.Azure Stream Analytics
C.Azure Data Factory
D.Azure HDInsight with Spark
AnswerA

Correct. Azure Synapse Analytics unifies data ingestion, processing, and analytics, supporting both streaming (via Event Hubs integration) and batch (via PolyBase or serverless SQL pool to query data lake directly). It provides near real-time and historical analytics capabilities.

Why this answer

Azure Synapse Analytics is the correct choice because it provides a unified analytics platform that can ingest both real-time streaming data from Azure Event Hubs and batch data from Azure Data Lake Storage Gen2. Its SQL Serverless feature allows querying data directly in the data lake using T-SQL without moving it, enabling near real-time dashboards and historical reporting in a single service.

Exam trap

The trap here is that candidates often confuse Azure Stream Analytics as the primary platform for streaming data, overlooking that Synapse Analytics provides the unified query layer needed to combine streaming and batch data for both dashboards and historical reporting without additional services.

Why the other options are wrong

B

Azure Stream Analytics is designed for real-time stream processing but cannot directly query batch data in Data Lake Storage Gen2 using SQL without moving it, nor does it support combining streaming and batch data in a unified analytics platform for near real-time dashboards and historical reporting.

C

Azure Data Factory is an ETL and orchestration service, not an analytics platform. It cannot directly serve near real-time dashboards or support SQL queries on data lake data without moving it.

D

HDInsight with Spark requires provisioning and managing a cluster, and does not natively support querying data directly in Data Lake Storage Gen2 using serverless SQL without moving it, unlike Synapse's serverless SQL pool.

When would these options actually be correct?

B

Azure Stream Analytics would be correct if the question only required real-time processing of streaming sensor data from Event Hubs and outputting results to a dashboard or storage, without any need to combine with batch data or query data lake files directly using SQL.

C

A question asking for a service to orchestrate data movement from Event Hubs and Data Lake Storage into a data warehouse or analytics system, without requiring real-time querying or SQL-on-lake capabilities.

D

A question where the requirement is to perform custom machine learning or complex ETL on large datasets using a managed Spark cluster, and the focus is on flexibility and programming (e.g., Python/Scala) rather than serverless SQL querying or unified analytics.

Why candidates pick the wrong answer

B

Candidates see 'streaming sensor data' and 'near real-time dashboards' and immediately think of Stream Analytics, overlooking the requirement to also handle batch inventory data and support SQL-based querying on the data lake without data movement.

C

Candidates may confuse Data Factory's data integration role with analytics, thinking it can both move and analyze data, especially when the scenario involves combining multiple data sources.

D

Candidates may think Spark is the go-to for big data analytics and streaming, but overlook that Synapse provides a more integrated, serverless SQL experience for querying data lakes without cluster management.

836
MCQeasy

Your company is migrating an on-premises SQL Server data warehouse to Azure. The solution must support both historical analytics and real-time reporting. Which Azure service should you recommend as the primary data store?

A.Azure Analysis Services
B.Azure Data Lake Storage Gen2
C.Azure SQL Database
D.Azure Synapse Analytics
AnswerD

Azure Synapse Analytics is the purpose-built cloud data warehouse service that uses a massively parallel processing (MPP) engine across multiple compute nodes, automatically distributing tables and using clustered columnstore indexes for high compression and scan performance. It provides full T-SQL support, PolyBase connectors to Azure Data Lake Storage Gen2 and other sources, and integrations with Azure Data Factory and Synapse Pipelines for end-to-end data movement. Synapse Link also enables real-time analytics on operational data, making it the closest technical equivalent to replacing an on-premises SQL Server data warehouse.

Why this answer

Azure Synapse Analytics is the correct choice because it is a cloud-native analytics service that unifies big data and data warehousing, supporting both historical analytics (via dedicated SQL pools for large-scale relational data warehousing) and real-time reporting (via serverless SQL pools or Apache Spark pools for streaming and interactive queries). It is designed to handle the migration of an on-premises SQL Server data warehouse while providing integrated capabilities for batch and real-time workloads.

Exam trap

The trap here is that candidates often confuse Azure SQL Database (an OLTP service) with a data warehouse solution, overlooking that Synapse Analytics is the dedicated Azure service for hybrid transactional/analytical processing (HTAP) and large-scale analytics workloads.

How to eliminate wrong answers

Option A is wrong because Azure Analysis Services is a semantic modeling and OLAP engine that provides curated data models for business intelligence, not a primary data store for raw historical and real-time data. Option B is wrong because Azure Data Lake Storage Gen2 is a scalable storage layer for big data analytics, but it lacks native SQL-based data warehousing and real-time query capabilities without additional compute services like Synapse or Databricks. Option C is wrong because Azure SQL Database is a transactional OLTP database optimized for online transaction processing, not designed for large-scale historical analytics or mixed workloads requiring both batch and real-time reporting.

837
MCQmedium

You are reviewing the Azure Data Factory mapping data flow configuration above. Which transformation is missing to ensure that only sales from the current year are loaded?

A.Derived column transformation
B.Aggregate transformation
C.Window transformation
D.Filter transformation
AnswerD

The Filter transformation in Azure Data Factory mapping data flows is the row-level predicate operation that keeps only rows satisfying a specified condition. By setting the condition to something like year(OrderDate) == year(currentDate()) or to_date(OrderDate) >= '2025-01-01', you can restrict the dataset to the current year. This transformation is purpose-built for row selection and does not alter the schema or group data, making it the correct choice for this requirement.

Why this answer

The Filter transformation is used in mapping data flows to restrict rows based on a condition. To load only sales from the current year, you would apply a filter condition such as `year(SalesDate) == year(currentDate())`, which removes all rows not matching the current year. This is the correct transformation for row-level filtering.

Exam trap

The trap here is that candidates confuse column-level transformations (Derived column) with row-level filtering, assuming that extracting the year automatically filters data, whereas Filter is the only transformation that actually removes rows.

How to eliminate wrong answers

Option A is wrong because the Derived column transformation creates or modifies columns (e.g., extracting the year from a date), but it does not remove rows; it only adds or alters column values. Option B is wrong because the Aggregate transformation groups rows and computes summary statistics (e.g., sum, count), which would lose individual sales row details and is not designed for row filtering. Option C is wrong because the Window transformation performs calculations over a set of rows (e.g., running totals, ranking) without eliminating rows from the output.

838
Multi-Selectmedium

Which TWO of the following are valid relational database services in Azure?

Select 2 answers
A.Azure Data Lake Storage
B.Azure SQL Database
C.Azure Cosmos DB
D.Azure Cache for Redis
E.Azure Database for MySQL
AnswersB, E

Azure SQL Database is a fully managed Platform-as-a-Service relational database service that hosts the SQL Server engine in the cloud. It supports core relational features such as tables, primary and foreign keys, joins, and ACID-compliant transactions, and you interact with it using T-SQL. As a true relational database service, it is a valid answer for this question.

Why this answer

Azure SQL Database (B) is a fully managed relational database service built on the SQL Server engine, offering T-SQL, relational schemas, and ACID transactions, so it is a valid relational database service in Azure. Azure Database for MySQL (E) is a fully managed relational database service based on the MySQL Community Edition engine, supporting relational tables, SQL queries, and ACID compliance, making it a valid relational database service as well. Azure Data Lake Storage (A) is a scalable object/file storage service for big data analytics, not a relational database engine.

Azure Cosmos DB (C) is a globally distributed multi-model NoSQL database (document, key-value, graph, column-family), not a relational database service. Azure Cache for Redis (D) is an in-memory key-value cache/data store, not a relational database service.

Exam trap

The trap here is that candidates often confuse Azure Cosmos DB as a relational database because it supports SQL-like queries, but it is fundamentally a NoSQL service with eventual consistency models and no relational integrity constraints.

839
Multi-Selecteasy

Which TWO Azure services are primarily used for batch processing of large data volumes?

Select 2 answers
A.Azure Databricks
B.Azure Data Lake Storage
C.Azure Synapse Pipelines
D.Azure Stream Analytics
E.Azure Logic Apps
AnswersA, C

Azure Databricks is a managed Apache Spark-based analytics platform that executes distributed batch jobs in Scala, Python, SQL, or R across a cluster of VMs. It treats batch workloads as first-class jobs, enabling scheduled ETL, feature engineering, and data wrangling on massive datasets with automatic cluster management. Although it can run Structured Streaming for real-time pipelines, its core processing model is ideal for bounded, large-scale batch data.

Why this answer

Azure Databricks (A) is correct because it is an Apache Spark-based analytics platform that natively supports distributed batch processing of large data volumes through Spark jobs, notebooks, and clusters. Azure Synapse Pipelines (C) is correct because it provides orchestration and data integration capabilities (built on Azure Data Factory) specifically designed to run batch data movement and transformation workloads at scale across large datasets. Azure Data Lake Storage (B) is not correct because it is a storage layer, not a processing service, even though it commonly stores data consumed by batch jobs.

Azure Stream Analytics (D) is not correct because it is designed for real-time streaming analytics on continuous data streams rather than batch processing. Azure Logic Apps (E) is not correct because it is a workflow automation and integration service for orchestrating apps, not a large-scale batch data processing engine.

Exam trap

The trap here is that candidates often confuse storage services (like Azure Data Lake Storage) with processing services, or they mistakenly think stream processing tools (like Stream Analytics) can handle batch workloads, when in fact batch processing requires tools designed for static, large-scale data transformations.

840
MCQmedium

A healthcare application stores patient medical records as JSON documents. Each document contains a variable set of fields depending on the patient's conditions. The application needs to query records by any field and support high write throughput. Which Azure data store is most appropriate?

A.Azure Blob Storage
B.Azure Synapse Analytics
C.Azure Cosmos DB with SQL API
D.Azure Table Storage
AnswerC

Azure Cosmos DB with the SQL API is the correct choice because it is a schema-agnostic document database that natively stores JSON, automatically indexes every property for efficient point reads and SQL-style queries, and scales horizontally with guaranteed single-digit-millisecond latency and throughput managed in request units. Unlike relational databases, it does not require a fixed schema and is designed for high write and read throughput on document workloads. The SQL API also supports rich queries over nested JSON fields, making it ideal for patient records with varying structures that require fast, interactive access.

Why this answer

Azure Cosmos DB with SQL API is the most appropriate choice because it natively supports storing and querying JSON documents with variable schemas, enabling efficient queries on any field. Its multi-model architecture and configurable indexing policies allow high write throughput while maintaining low-latency queries, which is critical for healthcare applications with dynamic patient records.

Exam trap

The trap here is that candidates often confuse Azure Table Storage's key-value capabilities with JSON document support, but Table Storage does not allow querying on arbitrary fields within a JSON document—it only supports queries on the partition key and row key, making it unsuitable for variable-schema medical records.

Why the other options are wrong

A

Azure Blob Storage is optimized for storing large unstructured binary data (like images or backups), not for querying individual fields within JSON documents with high write throughput and flexible schema.

B

Azure Synapse Analytics is a data warehouse and analytics service designed for large-scale, structured data processing and complex queries, not for high-throughput, low-latency operations on semi-structured JSON documents with variable fields.

D

Azure Table Storage is a NoSQL key-value store that does not support querying by arbitrary fields or indexing on multiple properties, making it unsuitable for querying JSON documents by any field. It also lacks native JSON support and flexible schema capabilities required for variable-field documents.

When would these options actually be correct?

A

An application needs to store and serve large media files (e.g., patient X-ray images or PDF reports) with high durability and scalability, and does not require querying by document fields.

B

A question asks: 'A company needs to run complex analytical queries across petabytes of structured sales data, integrating with Power BI for reporting. Which Azure service should they use?'

D

An application needs to store large volumes of structured, non-relational data (e.g., device telemetry) with simple key-based lookups and does not require complex queries or indexing on multiple fields. The data has a fixed schema and high throughput for point reads/writes is needed.

Why candidates pick the wrong answer

A

Candidates may think Blob Storage can handle JSON because it supports storing JSON files, but they overlook the need for querying by any field and high write throughput, which Blob Storage does not natively support.

B

Candidates may confuse Synapse's analytics capabilities with the need for querying JSON data, or assume that any 'analytics' service can handle document queries efficiently.

D

Candidates may confuse Azure Table Storage as a suitable NoSQL option for JSON documents because it is schema-less and supports high throughput, but they overlook its limited query capabilities and lack of native JSON support.

841
MCQmedium

A retail company stores historical sales data from multiple stores in Azure Data Lake Storage Gen2 as CSV files. They need to run complex SQL queries that join and aggregate data across multiple files to generate weekly sales reports. They want a serverless query service that can directly query the data in the lake without loading it into a separate database. Which Azure service should they use?

A.Azure SQL Database
B.Azure Synapse Serverless SQL pool
C.Azure Stream Analytics
D.Azure Data Factory
AnswerB

Azure Synapse Serverless SQL pool enables serverless querying of data stored in Azure Data Lake Storage (Parquet, CSV, etc.) without needing to load data into a separate store. It scales automatically and charges per query.

Why this answer

Azure Synapse Serverless SQL pool is the correct choice because it provides a serverless, on-demand SQL query engine that can directly query CSV files stored in Azure Data Lake Storage Gen2 using T-SQL syntax. It supports complex joins and aggregations across multiple files without requiring data movement or loading into a separate database, making it ideal for ad-hoc reporting on data lakes.

Exam trap

The trap here is that candidates often confuse Azure Synapse Serverless SQL pool with Azure SQL Database, assuming both can query data lakes directly, but Azure SQL Database requires data to be imported first, while the serverless SQL pool is purpose-built for on-demand querying of data lake files.

How to eliminate wrong answers

Option A is wrong because Azure SQL Database is a fully managed relational database that requires data to be loaded into its storage; it cannot directly query CSV files in a data lake without an ETL process. Option C is wrong because Azure Stream Analytics is designed for real-time stream processing (e.g., from Event Hubs or IoT Hub) and is not suited for batch SQL queries on historical CSV files in a data lake. Option D is wrong because Azure Data Factory is an orchestration and ETL/ELT service used to move and transform data, not a query engine that can run interactive SQL queries directly against files in the lake.

842
MCQmedium

A mobile game company stores player scores in Azure Cosmos DB. Each document contains the fields PlayerID (unique to the player), GameID, Score, and Timestamp. The most common query is: 'Retrieve all scores for a specific GameID, ordered by Score descending.' Which property should be chosen as the partition key to minimize Request Unit (RU) consumption?

A.PlayerID
B.GameID
C.Score
D.Timestamp
AnswerB

GameID is the filter in the dominant query, so it is the natural partition key. Cosmos DB places all items with the same GameID in the same logical partition, allowing a query such as 'SELECT * FROM scores s WHERE s.GameID = @gameId' to target a single partition and complete efficiently. Provided the number of games is large enough to avoid a single game exceeding the 10 GB logical partition limit, GameID gives good distribution and aligns perfectly with the workload.

Why this answer

GameID is the correct partition key because the most common query filters on GameID, and using it as the partition key ensures that all documents for a given GameID are stored in the same physical partition. This allows the query to target a single partition, minimizing cross-partition fan-out and reducing Request Unit (RU) consumption. A partition key that matches the query filter is essential for efficient, low-latency reads in Azure Cosmos DB.

Exam trap

The trap here is that candidates often choose PlayerID because it is unique and seems like a natural key, but they overlook that a partition key must align with the most common query filter to avoid cross-partition queries and high RU costs.

How to eliminate wrong answers

Option A (PlayerID) is wrong because PlayerID is unique per player, so each partition would contain only one document, causing every query to fan out across all partitions and consume high RUs. Option C (Score) is wrong because Score is a high-cardinality, frequently changing value, which would lead to hot partitions and inefficient range queries; it also does not align with the query filter on GameID. Option D (Timestamp) is wrong because Timestamp is a monotonically increasing value that would create hot partitions (all writes to the latest partition) and does not group data by GameID, forcing cross-partition queries.

843
Drag & Dropmedium

Drag and drop the steps to configure a geo-replication for Azure Cosmos DB in the correct order.

Drag or tap steps into the slots.

Steps
Order
1Step 1
2Step 2
3Step 3
4Step 4

Why this order

Geo-replication is configured by selecting regions and enabling multi-region writes if needed, then saving to initiate replication.

844
MCQhard

An e-commerce application uses Azure SQL Database. During flash sales, the database experiences high CPU usage and query timeouts. The team needs a solution that can handle sudden increases in demand without downtime. Which scaling option should they choose?

A.Read scale-out
B.Hyperscale service tier
C.Elastic Pool
D.Geo-replication
AnswerB

The Hyperscale service tier is built on a distributed architecture with separate compute nodes and page servers, allowing compute to be scaled up to 100 vCores in seconds with no downtime. Because e-commerce demand spikes are often sudden and unpredictable, Hyperscale lets you add compute power—and optionally additional read replicas—dynamically without re-provisioning storage, making it the only listed option that directly and rapidly increases write-transaction capacity.

Why this answer

The Hyperscale service tier is designed for high-performance, rapidly growing workloads that require instant scalability. It separates compute from storage, allowing compute nodes to be added or scaled up in seconds without downtime, making it ideal for handling sudden spikes in demand like flash sales.

Exam trap

The trap here is confusing 'scaling for demand spikes' with 'scaling for read-heavy workloads' or 'managing multiple databases,' leading candidates to incorrectly choose Read scale-out or Elastic Pool instead of the compute-scalable Hyperscale tier.

How to eliminate wrong answers

Option A is wrong because Read scale-out is a feature for offloading read-only queries to a replica, not for handling high CPU usage or write-heavy transactional spikes. Option C is wrong because Elastic Pools are designed for managing multiple databases with varying, predictable usage patterns, not for a single database experiencing sudden, extreme spikes. Option D is wrong because Geo-replication provides disaster recovery and read-scale capabilities, but does not directly address compute scaling or CPU bottlenecks during a demand surge.

845
MCQmedium

An e-commerce company uses Azure SQL Database for its product catalog. During promotional events, the database experiences unpredictable spikes in traffic. The company wants a solution that automatically adjusts compute resources based on demand without manual intervention. Which Azure SQL Database option should they use?

A.A) Read replicas
B.B) Active geo-replication
C.C) Serverless compute tier
D.D) Elastic pool
AnswerC

The serverless compute tier for Azure SQL Database is engineered precisely for unpredictable workloads: it automatically scales the compute resources between a configured minimum and maximum vCores based on actual demand, and it can pause the database entirely during prolonged inactivity while continuing to store data. This tier bills per-second for the compute actually used, so a sudden surge in write or read activity triggers immediate scale-up without manual intervention, then scales back down when demand subsides. This is the only listed option that directly provides automatic, demand-driven compute scaling for the primary workload.

Why this answer

The Serverless compute tier for Azure SQL Database automatically scales compute resources based on workload demand and pauses the database during idle periods, charging only for storage and used compute. This matches the requirement for handling unpredictable traffic spikes without manual intervention, as it provides instant scaling and cost efficiency for intermittent workloads.

Exam trap

The trap here is that candidates confuse the Serverless compute tier with elastic pools, assuming both handle scaling, but elastic pools scale resources across multiple databases, not automatically for a single database's unpredictable spikes.

How to eliminate wrong answers

Option A is wrong because read replicas are designed to offload read-only queries for reporting or analytics, not to automatically scale compute resources for write-heavy or unpredictable transactional spikes. Option B is wrong because active geo-replication provides disaster recovery and read-scale capabilities by maintaining synchronized replicas in different regions, but it does not dynamically adjust compute resources based on demand. Option D is wrong because elastic pools are used to share resources among multiple databases with predictable, aggregated usage patterns, not to automatically scale a single database's compute in response to unpredictable spikes.

846
MCQhard

A manufacturing company collects sensor data from thousands of IoT devices. Each reading contains a device ID, timestamp, value, and device-specific measurement fields. The company needs to analyze the data in real time to detect anomalies and trigger alerts. They also need to store the same data for historical batch analysis to identify long-term trends. Which architecture pattern best describes this combination of data processing approaches?

A.Batch processing only
B.Stream processing only
C.Lambda architecture
D.Data lake
AnswerC

Lambda architecture is correct because it deliberately combines a batch layer for accurate, comprehensive historical processing and a speed layer for real-time stream processing over the same sensor data. The batch layer computes precise trends and baseline models from all collected data, while the speed layer provides low-latency anomaly detection and feeds both results into a serving layer for unified querying. This design satisfies both the real-time alerting and historical analysis requirements, with the tradeoff of maintaining two separate code paths.

Why this answer

The Lambda architecture is the correct pattern because it combines both stream processing for real-time anomaly detection and alerting, and batch processing for historical analysis of long-term trends. This architecture uses a speed layer for low-latency stream processing (e.g., Apache Kafka, Azure Stream Analytics) and a batch layer for comprehensive, accurate historical computations (e.g., Azure Data Lake, Apache Spark). The serving layer then merges results from both paths to provide a unified view.

Exam trap

The trap here is that candidates confuse a storage architecture (data lake) with a processing architecture pattern, or mistakenly think that either stream or batch processing alone can satisfy both real-time and historical requirements.

How to eliminate wrong answers

Option A is wrong because batch processing alone cannot handle real-time anomaly detection and alerting, as it processes data in large, scheduled intervals with high latency. Option B is wrong because stream processing alone is not designed for efficient historical batch analysis over long periods, as it focuses on low-latency, in-memory computations and typically does not retain full historical data for reprocessing. Option D is wrong because a data lake is a storage repository for raw data in its native format, not a processing architecture pattern that combines real-time and batch analytics.

847
MCQhard

A financial services company runs large-scale analytical queries on a dedicated SQL pool in Azure Synapse Analytics. They notice that during peak hours, complex aggregations consume excessive resources, causing slower queries from other users. They need to ensure that critical management reports always get enough resources and complete within a guaranteed time, while other less important queries do not starve them. Which feature should they implement?

A.Result-set caching
B.Materialized views
C.Workload management
D.Columnstore index
AnswerC

Workload management is the correct choice because it directly governs how compute resources are allocated across queries in services like Azure Synapse Analytics dedicated SQL pools. Workload groups and classifiers let you assign CPU, memory, and concurrency slots to different workloads, so critical analytical queries get predictable performance even when the system is under heavy load. This is resource governance, not just a performance optimization.

Why this answer

Workload management in Azure Synapse Analytics allows you to classify, assign resources, and prioritize queries by creating workload groups and classifiers. By configuring a workload group for critical management reports with a higher importance and a guaranteed minimum resource percentage, you ensure those queries always get sufficient resources and complete within a guaranteed time, while less important queries are throttled and cannot starve the critical ones.

Exam trap

The trap here is that candidates often confuse performance optimization features (caching, materialized views, indexes) with resource governance, assuming any performance improvement will solve concurrency and starvation issues, but only workload management provides explicit prioritization and resource allocation.

Why the other options are wrong

A

Result-set caching stores query results for repeated execution, reducing compute usage for identical queries, but it does not guarantee resource allocation or priority for critical reports during peak concurrency.

B

Materialized views improve query performance by pre-computing aggregations, but they do not guarantee resource allocation or prevent resource contention during peak loads. The question requires a feature that ensures critical queries get sufficient resources, which workload management provides.

D

Columnstore indexes improve query performance through better compression and batch processing, but they do not provide resource governance or prioritization to guarantee that critical reports get sufficient resources during peak loads.

When would these options actually be correct?

A

A question where users frequently run the same complex aggregations and want to reduce latency and resource consumption for repeated queries, without needing to manage concurrency or prioritize workloads.

B

A question where the main concern is improving query performance for complex aggregations on large tables, without resource contention issues. For example: 'A company needs to speed up frequently run aggregate queries on a large fact table in Azure Synapse Analytics. Which feature should they implement?'

D

A question where a company needs to improve query performance for large analytical workloads without changing resource allocation, such as 'Which feature reduces I/O and speeds up aggregations on large fact tables?'

Why candidates pick the wrong answer

A

Candidates may think caching can speed up critical reports by reusing results, but they overlook that it doesn't address resource contention or provide guaranteed execution time for new queries.

B

Candidates may think that materialized views reduce resource consumption by pre-computing results, thus indirectly helping with resource contention. However, they do not provide guaranteed resource allocation or isolation between workloads.

D

Candidates know columnstore indexes boost analytical query speed, so they mistakenly think faster queries alone can solve resource contention, overlooking the need for workload isolation and prioritization.

848
MCQhard

A company uses Azure Cosmos DB with the MongoDB API for a customer profile service. The service handles 10,000 writes per second and 50,000 reads per second. The data is 1 KB per document. The company needs to reduce read latency for frequently accessed customers and minimize RU consumption. Currently, the service reads the entire document for every request. They decide to implement a materialized view pattern using Azure Cosmos DB change feed and a separate container. Which additional step should they take to optimize read performance and cost?

A.Create a materialized view container with a partition key optimized for the read queries.
B.Use stored procedures to aggregate data on read.
C.Increase the provisioned RU/s on the source container.
D.Enable Time-to-Live (TTL) on the source container to automatically expire old data.
AnswerA

A materialised view container partitioned on the read query's access pattern lets point reads target a single logical partition, cutting cross-partition fan-out and RU cost. This directly reduces read latency for frequently accessed customers while minimising RU consumption.

Why this answer

Option A is correct because a materialized view container with a partition key chosen to match the read query patterns allows the service to read precomputed, denormalized results from a single logical partition, reducing cross-partition fan-out and the number of RUs consumed per read. Since the source container handles 10,000 writes/sec and 50,000 reads/sec at 1 KB per document, offloading reads to a purpose-built view container also prevents read traffic from competing with write throughput on the source. Stored procedures (B) run server-side but still scan/aggregate source data on each read, so they do not reduce RU cost or latency for frequent reads.

Increasing RU/s on the source container (C) only adds capacity and cost without changing the read pattern, and TTL (D) expires old data but does not optimize reads for frequently accessed customers.

849
MCQeasy

A logistics company stores shipping waybill data as JSON documents. Each document contains fields like 'shipmentId', 'destination', and 'items', but the number of items and the fields within each item can vary between shipments. Which category best describes this type of data?

A.Operational data
B.Semi-structured data
C.Unstructured data
D.Structured data
AnswerB

JSON documents consist of key-value pairs, nested objects, and arrays, but each waybill may have a different set of fields—some optional, some nested. This self-describing format provides inherent organization through keys and hierarchical structure, yet it does not enforce a rigid, predefined schema. That combination of organizational properties without a fixed tabular schema is the defining characteristic of semi-structured data, which is why this is the correct classification.

Why this answer

JSON documents with varying fields and nested structures like 'items' that differ between shipments are a classic example of semi-structured data. Unlike structured data with a fixed schema, semi-structured data uses tags or markers (like JSON key-value pairs) to separate data elements, allowing for flexibility in the number and type of fields per record. This aligns with the DP-900 definition of semi-structured data, which includes formats such as JSON, XML, and Parquet.

Exam trap

The trap here is that candidates confuse 'semi-structured' with 'unstructured' because JSON appears flexible, but JSON is still structured with key-value pairs, unlike truly unstructured data like audio or video files.

Why the other options are wrong

A

Operational data refers to data used in day-to-day business operations, not a data format category. The question asks about data structure (structured, semi-structured, unstructured), not its purpose.

C

Unstructured data lacks a predefined data model or schema, but JSON documents have a structure with fields like 'shipmentId', 'destination', and 'items', even if fields vary. The data is semi-structured because it uses tags and keys to organize data, not completely unstructured.

D

Structured data requires a fixed schema with consistent fields and data types, but the JSON documents here have varying fields and nested structures, making them semi-structured.

When would these options actually be correct?

A

A question asks: 'Which type of data is generated from daily business transactions, such as sales orders or shipping records?' Operational data would be the correct answer because it describes data used for routine business activities.

C

A question describing data such as images, videos, audio files, or free-form text documents with no inherent structure or schema. For example: 'A company stores customer support chat logs as plain text files with no formatting. Which data category?'

D

A question describing data stored in a relational database table with predefined columns (e.g., customer ID, name, address) where every row has the same columns and data types would make structured data the correct answer.

Why candidates pick the wrong answer

A

Candidates may confuse the term 'operational' with the data's role in logistics operations, mistakenly thinking it describes the data format rather than its business use.

C

Candidates may confuse 'unstructured' with 'flexible structure' because JSON allows varying fields, leading them to think it's unstructured. They overlook that JSON still has a schema (key-value pairs) and is categorized as semi-structured.

D

Candidates may think JSON is always structured because it has key-value pairs, overlooking that schema flexibility and nested variability define semi-structured data.

850
MCQmedium

You are the database administrator for a large financial institution migrating their core banking system to Azure. The system uses SQL Server with many stored procedures, triggers, and CLR assemblies. The database is 2 TB and growing. The migration must minimize application changes and support high availability with automatic failover. You need to select an Azure relational database service. What should you choose?

A.Azure SQL Database
B.Azure Database for PostgreSQL
C.SQL Server on Azure Virtual Machines
D.Azure SQL Managed Instance
AnswerD

Azure SQL Managed Instance provides near-full SQL Server surface area, including stored procedures, triggers and CLR assemblies, so application changes are minimal. It also supports built-in high availability with automatic failover, meeting the 2 TB core banking requirement.

Why this answer

Azure SQL Managed Instance (option D) is correct because it provides near-100% compatibility with SQL Server, including stored procedures, triggers, and CLR assemblies, while also offering built-in high availability with automatic failover, so the 2 TB core banking database can migrate with minimal application changes. It supports cross-database queries, SQL Agent, and other SQL Server features that Azure SQL Database does not fully support. Azure SQL Database (option A) has limitations such as no CLR support and restricted cross-database access, which would require application changes.

Azure Database for PostgreSQL (option B) is a different engine and would require rewriting stored procedures and triggers. SQL Server on Azure Virtual Machines (option C) offers full compatibility but requires you to configure and manage your own high-availability and failover solution, such as Always On availability groups, rather than providing automatic failover as a managed service.

851
MCQmedium

A data engineering team needs to build a batch ETL pipeline that transforms large volumes of clickstream data stored as CSV files in Azure Data Lake Storage Gen2. The transformations require running distributed Python and Scala code using Apache Spark. The transformed data will be loaded into a data warehouse for reporting. The team wants a serverless compute environment that automatically scales and charges per second. Which Azure service should they use to run the Spark transformations?

A.Azure Synapse Analytics (Spark pools)
B.Azure Data Factory
C.Azure Stream Analytics
D.Azure Analysis Services
AnswerA

Azure Synapse Analytics Spark pools are the correct choice because they provide a managed, distributed Apache Spark compute engine that can execute arbitrary batch ETL code written in Python, Scala, or SQL. These pools read and write directly from Azure Data Lake Storage Gen2 with optimized in-memory processing, and serverless pools offer per-second billing and automatic pausing, which is ideal for intermittent batch workloads. This is the actual compute environment needed for Spark-based transformations, not merely an orchestration or streaming service.

Why this answer

Azure Synapse Analytics (Spark pools) is the correct choice because it provides a serverless Apache Spark compute environment that automatically scales and charges per second, perfectly matching the requirement for running distributed Python and Scala transformations on large volumes of clickstream data stored in Azure Data Lake Storage Gen2. The service integrates directly with the data lake and can load transformed results into a dedicated SQL pool for data warehouse reporting.

Exam trap

The trap here is that candidates often confuse Azure Data Factory's ability to orchestrate Spark jobs with actually running Spark code, leading them to select it instead of recognizing that Synapse Spark pools are the dedicated compute service for executing distributed Python/Scala transformations.

How to eliminate wrong answers

Option B (Azure Data Factory) is wrong because it is an orchestration and data integration service, not a compute engine for running distributed Spark code; it can trigger Spark jobs but does not execute Python or Scala transformations itself. Option C (Azure Stream Analytics) is wrong because it is designed for real-time stream processing using SQL-like queries, not for batch ETL transformations with Spark code. Option D (Azure Analysis Services) is wrong because it is a semantic modeling and reporting layer for tabular data, not a compute environment for running Spark transformations.

Page 11

Page 12 of 12