Courseiva

CCNA Monitor Optimize Db Questions

75 of 158 questions · Page 1/3 · Monitor Optimize Db topic · Answers revealed

1
MCQmedium

You administer an Azure SQL Database that uses the General Purpose tier. Users report that queries are slow during peak hours. You need to identify if the slow performance is due to log write latency. Which metric should you examine in Azure Monitor?

A.Log IO percent
B.Transaction log usage
C.Average IO latency
D.Log write latency
AnswerD

Log write latency directly measures the time taken to write transaction log records to durable storage, which is the precise bottleneck causing slow queries during peak hours in the General Purpose tier. Examining this metric in Azure Monitor isolates whether log throughput, not CPU or data I/O, constrains performance.

Why this answer

The correct metric to examine is Log write latency (option D), as it directly measures the time taken to write to the transaction log, which can indicate slow performance due to log write latency. Option A (Log IO percent) measures the percentage of log throughput used, not latency. Option B (Transaction log usage) measures log file space used, not performance.

Option C (Average IO latency) includes both data and log I/O, so it is not specific to log writes.

2
MCQeasy

You are monitoring an Azure SQL Database using dynamic management views (DMVs). You run a query against `sys.dm_exec_query_stats` to find the top 10 queries by total worker time. Several queries show high worker time but low logical reads. The database is not experiencing any blocking or deadlocks. What is the most likely cause of the high worker time?

A.The queries suffer from parameter sniffing leading to suboptimal plans.
B.The queries are experiencing memory pressure causing excessive lazy writes.
C.The queries are waiting on transaction log writes.
D.The queries are CPU-bound due to inefficient query plans.
AnswerD

High worker time with low logical reads indicates CPU consumption rather than I/O. Inefficient plans, such as scans, bad cardinality estimates or missing indexes causing repeated CPU-heavy operations, burn worker time without many page reads, and no blocking or deadlocks were reported.

Why this answer

High worker time (CPU time) with low logical reads indicates that the queries are CPU-bound rather than I/O-bound. Inefficient query plans, such as those with large hash joins, sorts, or non-sargable predicates, can cause excessive CPU consumption without generating many logical reads. Option A is incorrect because parameter sniffing typically leads to varying plan quality, but the consistent high worker time across multiple queries suggests a systematic plan efficiency issue, not necessarily parameter sniffing.

Option B is incorrect because memory pressure would cause increased I/O activity (lazy writes) which is not observed with low logical reads. Option C is incorrect because transaction log writes are I/O operations and would not cause high worker time with low I/O.

3
MCQhard

You manage an Azure SQL Database that experiences blocking. You need to identify the blocking chain and the T-SQL statements involved in the blocking. Which dynamic management view (DMV) should you query?

A.sys.dm_exec_requests
B.sys.dm_exec_requests joined with sys.dm_exec_sql_text and sys.dm_exec_sessions
C.sys.dm_exec_input_buffer
D.sys.dm_os_waiting_tasks
AnswerB

To identify the blocking chain and the T-SQL statements involved, you should query sys.dm_exec_requests to get the blocking_session_id, join it with sys.dm_exec_sql_text to retrieve the SQL text using the sql_handle, and optionally join with sys.dm_exec_sessions for session details. This combination provides the blocking session, the blocked session, and the statements they are executing, giving a complete view of the blocking scenario.

Why this answer

The most effective way to diagnose blocking in Azure SQL Database is to query sys.dm_exec_requests, which includes the blocking_session_id column. By joining this DMV with sys.dm_exec_sql_text on the sql_handle, you can retrieve the T-SQL text for both the blocking and blocked requests. Adding sys.dm_exec_sessions provides additional context like login name and host.

This combination reveals the full blocking chain and the statements involved.

Exam trap

The trap here is thinking that a single DMV like sys.dm_os_waiting_tasks provides the full T-SQL text, when in fact you need to join multiple DMVs to get both the blocking chain and the statements.

4
MCQmedium

You are monitoring an Azure SQL Database using the sys.dm_db_resource_stats DMV. The avg_log_write_percent column shows 95% for the last hour. What does this indicate, and what should you do?

A.The database is out of transaction log space; increase the max log size.
B.The database storage is running out; scale up storage.
C.The database is nearing its log write IOPS limit; consider scaling up or optimizing log writes.
D.The CPU is overloaded; scale up CPU.
AnswerC

The avg_log_write_percent column measures log write throughput as a percentage of the database's provisioned limit. At 95%, the database is approaching its log write IOPS ceiling, risking throttling. Scaling up the service tier or SKU raises that limit, while optimising log-heavy operations reduces demand, directly addressing the sustained near-saturation constraint.

Why this answer

The avg_log_write_percent metric in sys.dm_db_resource_stats measures the percentage of the log write IOPS limit used. At 95%, the database is nearing its log write IOPS limit, which can cause transaction delays and throttling. The appropriate response is to scale up the service tier (e.g., to a higher DTU or vCore level) or optimize log writes to reduce IOPS consumption.

Option A is incorrect because the metric does not indicate running out of log space; log space is separate. Option B is incorrect because storage scale (size) does not directly affect log write IOPS. Option D is incorrect because this metric is specifically about log I/O, not CPU.

5
MCQhard

You have an Azure SQL Managed Instance used for an e-commerce platform. During a flash sale, you experience a deadlock that causes transaction rollbacks. You need to minimize deadlock occurrences in the future. What should you implement?

A.Enable READ COMMITTED SNAPSHOT isolation level.
B.Configure deadlock graph in Extended Events.
C.Enable automatic tuning to force last good plan.
D.Increase the instance vCores to improve concurrency.
AnswerA

READ COMMITTED SNAPSHOT uses row versioning in tempdb, so readers don't take shared locks on data pages. This removes the shared-versus-exclusive lock conflicts that cause deadlocks during concurrent flash-sale transactions, satisfying the requirement to minimise deadlock occurrences.

Why this answer

Enabling READ COMMITTED SNAPSHOT isolation (RCSI) makes readers use row versioning from tempdb instead of taking shared locks, which eliminates the classic reader-writer deadlock pattern that plagues e-commerce workloads mixing SELECTs and UPDATEs. This directly reduces deadlock frequency without changing application code.

Exam trap

DP-300 often tests the misconception that monitoring tools (deadlock graphs, Extended Events) or more resources (vCores) prevent deadlocks, when only isolation-level or access-pattern changes actually reduce them.

How to eliminate wrong answers

Option B is wrong because a deadlock graph in Extended Events is a diagnostic/monitoring tool — it captures what happened but does not prevent future deadlocks. Option C is wrong because forcing the last good plan addresses plan regressions and parameter sniffing, not lock-based deadlocks. Option D is wrong because adding vCores increases throughput but does not change lock acquisition order or eliminate the shared-lock vs exclusive-lock conflicts that cause deadlocks.

6
MCQmedium

You are responsible for an Azure SQL Managed Instance that hosts a database with a table named Orders. The table has a clustered index on OrderID and a nonclustered index on CustomerID. You notice that a frequently executed query that filters on CustomerID and returns a small number of rows is performing a clustered index scan. You need to improve the query performance. What should you do?

A.Update statistics on the CustomerID column.
B.Create a covering nonclustered index on CustomerID that includes the columns required by the query.
C.Force the query to use the existing nonclustered index with a query hint.
D.Rebuild the nonclustered index on CustomerID.
AnswerB

The query filters on CustomerID and returns a small number of rows, but the optimizer chooses a clustered index scan, likely because the nonclustered index on CustomerID does not cover the query and key lookups would be expensive. A covering index includes all columns referenced by the query (in the key or INCLUDE clause), eliminating key lookups and enabling an index seek. This reduces IO and CPU, improving performance for this frequent query.

Why this answer

When a query filters on a nonclustered index key but requires additional columns not in the index, the optimizer may choose a clustered index scan to avoid key lookups. Making the nonclustered index covering by including the required columns allows an index seek that returns all needed data without touching the base table. This is the most direct and reliable way to improve performance for this frequent query.

Exam trap

The trap here is assuming that rebuilding or updating statistics will change the plan, when the real issue is that the nonclustered index does not cover the query, causing the optimizer to prefer a scan.

7
MCQhard

You manage an Azure SQL Database that uses a Serverless compute tier. You notice that during idle periods, the database auto-pauses and then auto-resumes when a connection is made. However, users report that the first query after a pause is slow. You need to improve the performance of the first query. What should you do?

A.Increase the maximum vCores
B.Create a SQL Agent job to ping the database every hour
C.Disable auto-pause for the serverless database
D.Enable Query Store
AnswerC

Disabling auto-pause keeps the serverless database continuously active, eliminating the cold-start resume latency that delays the first query. This directly satisfies the requirement to improve first-query performance after idle periods, though it forfeits the cost savings auto-pause provides during inactivity.

Why this answer

The slow first query after auto-resume is caused by the cold-start latency of the serverless compute tier, which includes provisioning resources and warming the buffer pool. Disabling auto-pause ensures the database remains online and the buffer pool stays populated, eliminating the cold-start delay for the first query.

Exam trap

The trap here is that candidates may think increasing vCores or using a ping job solves the cold-start problem, but these options either do not address the root cause or are inefficient workarounds, while disabling auto-pause directly eliminates the latency by keeping the database always active.

How to eliminate wrong answers

Option A is wrong because increasing the maximum vCores does not prevent auto-pause or reduce cold-start latency; it only scales compute resources during active periods. Option B is wrong because a SQL Agent job that pings the database every hour would keep the database from auto-pausing only if the ping interval is shorter than the auto-pause delay (default 1 hour), but this is a workaround that does not address the root cause and can incur unnecessary compute costs. Option D is wrong because enabling Query Store captures query performance data but does not affect the auto-pause behavior or the cold-start latency of the first query after resume.

8
MCQmedium

You are managing an Azure SQL Database that experiences intermittent performance degradation. Query Store shows a significant increase in wait time for PAGEIOLATCH_SH. You need to identify the most likely cause. What should you investigate first?

A.Out-of-date statistics
B.Insufficient IOPS or throughput at the database level
C.Missing indexes
D.Blocking from long-running transactions
AnswerB

PAGEIOLATCH_SH waits occur when sessions stall reading pages from storage into the buffer pool, so the first suspect is storage throughput. Checking database-level IOPS or throughput limits identifies whether the tier is throttling reads during the degradation windows.

Why this answer

PAGEIOLATCH_SH waits indicate I/O subsystem pressure, often due to insufficient IOPS or throughput. Option A is incorrect because out-of-date statistics cause cardinality estimation errors, not I/O waits. Option C is incorrect because missing indexes typically cause table scans but not necessarily PAGEIOLATCH waits.

Option D is incorrect because blocking causes waits like LCK_M_*, not PAGEIOLATCH.

9
MCQeasy

You are a database administrator for a company that uses Azure SQL Database. You need to configure a diagnostic setting to send database metrics to a Log Analytics workspace for long-term analysis. The solution should be cost-effective and include metrics like CPU percentage, data IO, and log IO. What should you do?

A.Enable Azure SQL Insights (preview) for the database.
B.Enable Query Store and configure it to export to Log Analytics.
C.In the Azure portal, add a diagnostic setting for the database to stream 'AllMetrics' to a Log Analytics workspace.
D.Create a T-SQL job that periodically inserts sys.dm_db_resource_stats into a table in Log Analytics.
AnswerC

Streaming 'AllMetrics' captures the platform metrics Azure SQL Database emits natively — CPU percentage, data IO and log IO — without enabling expensive SQL Insights or query store overhead. Diagnostic settings route these directly to the Log Analytics workspace, satisfying the long-term analysis and cost-effectiveness constraints. Basic and Instance metrics tiers are excluded, keeping ingestion charges minimal.

Why this answer

Azure SQL Database diagnostic settings allow streaming platform metrics (CPU percentage, data IO, log IO) directly to a Log Analytics workspace by selecting the 'AllMetrics' category. This is the native, cost-effective mechanism for long-term metric retention and analysis without custom code. It requires no T-SQL jobs or preview features and integrates directly with Azure Monitor.

Exam trap

The trap is confusing in-database monitoring tools (Query Store, DMVs) with Azure Monitor diagnostic settings — candidates pick Query Store or custom T-SQL jobs because they sound like 'database monitoring', missing that platform metrics require diagnostic settings.

How to eliminate wrong answers

Option A is wrong because Azure SQL Insights is a preview monitoring solution built on top of diagnostic settings and Workbooks; it is not the direct configuration mechanism and adds preview-feature risk and potential cost. Option B is wrong because Query Store captures query-level performance data inside the database engine, not platform metrics like CPU percentage or IO, and it cannot export to Log Analytics natively. Option D is wrong because a custom T-SQL job polling sys.dm_db_resource_stats is manual, adds operational overhead, and does not provide the native metric streaming that diagnostic settings offer.

10
Multi-Selecthard

Which THREE actions can you take to optimize query performance in Azure SQL Database using Intelligent Query Processing?

Select 3 answers
A.Enable adaptive joins
B.Enable interleaved execution for MSTVFs
C.Enable Query Store
D.Enable columnstore indexes
E.Use approximate count distinct
AnswersA, B, E

Adaptive joins let the optimiser defer the hash-versus-nested-loops decision until after the first input is scanned, choosing based on actual row counts. This corrects poor join choices caused by inaccurate cardinality estimates at compile time.

Why this answer

Adaptive joins (A) are an Intelligent Query Processing feature that lets the optimizer defer the choice between a hash join and a nested loops join until runtime, switching to the better plan based on actual row counts and thereby improving performance for queries with inaccurate cardinality estimates. Interleaved execution for MSTVFs (B) is also an IQP feature that lets multi-statement table-valued functions be executed in an interleaved manner so the optimizer can use actual row counts from the function's first execution to produce a better overall plan. Approximate count distinct (E) is an IQP capability (APPROX_COUNT_DISTINCT) that returns statistically accurate distinct counts with much less CPU and memory than exact COUNT(DISTINCT), speeding up aggregation-heavy queries.

Query Store (C) is a monitoring and plan-capture feature, not an IQP query-optimization action, and columnstore indexes (D) are a physical data-access/columnar storage technology rather than an Intelligent Query Processing optimization, so neither belongs among the three IQP actions.

Exam trap

DP-300 often tests candidates who conflate all performance features (Query Store, columnstore, IQP) into one bucket — the key is recognizing that IQP is specifically about runtime plan adaptation, not storage or monitoring.

11
MCQeasy

You are analyzing query performance in an Azure SQL Database. The query in the exhibit returns a list of queries ordered by total_logical_reads. What does high total_logical_reads typically indicate?

A.The query is experiencing I/O latency
B.The query is using a lot of CPU time
C.The query is using a lot of memory
D.The query is reading many pages from the buffer pool, possibly due to missing indexes
AnswerD

High total_logical_reads means the query is pulling many 8 KB pages from the buffer pool, indicating it scans more data than necessary. This points to missing or ineffective indexes forcing large scans, satisfying the stem's constraint of diagnosing poor query performance.

Why this answer

High total_logical_reads typically indicates that the query is reading many pages from the buffer pool, which often points to missing or inefficient indexes. Option D is correct. Option A is incorrect because high logical reads relate to buffer pool access, not necessarily I/O latency (which is indicated by high physical reads).

Option B is incorrect because CPU time is measured by worker_time, not logical reads. Option C is incorrect because while logical reads can increase memory usage, the primary indicator of memory usage is the memory grant, not logical reads.

12
MCQmedium

You need to configure alerts for an Azure SQL Database to notify the operations team when the database exceeds 80% DTU consumption for more than 10 minutes. What should you use?

A.Configure a SQL Agent alert
B.Configure Azure SQL Auditing
C.Use Azure Advisor recommendations
D.Create a metric alert in Azure Monitor
AnswerD

Azure Monitor metric alerts evaluate platform metrics such as DTU consumption against thresholds over a defined window, satisfying the 80% for 10 minutes condition. DTU percentage is emitted automatically as a metric, so no diagnostic logging or query is needed, unlike Log Analytics-based alerts.

Why this answer

Azure Monitor metric alerts evaluate platform metrics such as DTU percentage over a defined time window and fire notifications via action groups. To alert when DTU consumption exceeds 80% for more than 10 minutes, you create a metric alert on the 'DTU percentage' metric with a threshold of 80 and an aggregation granularity/window of 10 minutes. This is the native, supported mechanism for Azure SQL Database resource alerts.

Exam trap

DP-300 often tests the confusion between auditing (security logging) and monitoring (performance metrics) — candidates pick 'Azure SQL Auditing' because it sounds like it watches the database.

How to eliminate wrong answers

Option A is wrong because SQL Agent alerts are a SQL Server on-premises/IaaS feature and are not available for Azure SQL Database (PaaS), which has no SQL Agent. Option B is wrong because Azure SQL Auditing records security-relevant events to storage/Log Analytics, not performance threshold alerts. Option C is wrong because Azure Advisor provides best-practice recommendations, not real-time threshold-based notifications.

13
Multi-Selectmedium

You are optimizing an Azure SQL Database that runs a reporting workload. The database is in the General Purpose tier. You notice that many queries are performing table scans on large tables. Which TWO actions would most likely improve query performance without increasing costs?

Select 2 answers
A.Update statistics on the tables.
B.Upgrade to Business Critical tier.
C.Increase MAXDOP to 8.
D.Enable automatic tuning.
E.Create nonclustered indexes on columns used in WHERE clauses.
AnswersA, E

Updating statistics gives the query optimiser accurate cardinality estimates, so it can choose index seeks or better join orders instead of scanning large tables. This directly addresses the stem's table-scan symptom while remaining within the existing General Purpose tier, satisfying the no-added-cost constraint.

Why this answer

Option A is correct because stale or missing statistics prevent the query optimizer from accurately estimating cardinality, often forcing scans instead of seeks; running UPDATE STATISTICS (or relying on auto-update statistics) gives the optimizer better row-count estimates and can produce more efficient plans at no extra cost. Option E is correct because creating nonclustered indexes on the columns referenced in WHERE clauses gives the optimizer a covering or seekable access path, converting full table scans on large tables into index seeks or scans of a much smaller structure, which directly improves reporting query performance without changing the service tier. Option B is not appropriate because upgrading to Business Critical increases cost, violating the 'without increasing costs' constraint.

Option C is not appropriate because raising MAXDOP to 8 changes parallelism for the whole workload and does not address the root cause of scans, and it can even hurt performance or increase resource usage. Option D is not appropriate because enabling automatic tuning may create or drop indexes and force plans, but it is not a guaranteed, immediate fix for the observed scans and does not by itself ensure the specific WHERE-clause columns are indexed.

Exam trap

DP-300 often tests the trade-off between performance and cost, tempting candidates to choose tier upgrades or MAXDOP changes when cost-neutral options like indexing and statistics are correct.

14
Multi-Selectmedium

You are tuning a query in Azure SQL Database. Which TWO actions can reduce logical reads?

Select 2 answers
A.Add query hints to force index usage
B.Create a nonclustered index on the columns used in WHERE clause
C.Rewrite the query as a stored procedure
D.Increase the database max memory setting
E.Update statistics on the tables involved
AnswersB, E

A nonclustered index stores the WHERE-clause key values in a separate B-tree structure, letting the engine seek directly to matching rows instead of scanning every page. This sharply reduces the pages touched per execution, directly lowering logical reads — the metric the stem asks you to minimise.

Why this answer

Option B is correct because a nonclustered index on the WHERE-clause columns gives the optimizer a narrow access path, so it can seek directly to matching rows instead of scanning the base table or clustered index, which lowers the number of 8 KB pages read and therefore logical reads. Option E is correct because updating statistics gives the optimizer accurate cardinality estimates, enabling better plan choices such as index seeks and appropriate join strategies, which reduces the pages touched per execution. Option A is not correct because forcing an index with a hint does not by itself reduce logical reads and can even increase them if the optimizer's original plan was better.

Option C is not correct because wrapping the query in a stored procedure mainly aids plan reuse and parameterization, not the number of pages read per execution. Option D is not correct because increasing max memory affects buffer pool caching and physical I/O, not the logical read count, which is measured independently of whether pages come from memory or disk.

Exam trap

DP-300 often tests the difference between actions that improve performance generally (query hints, stored procedures, memory) and actions that specifically reduce logical reads (indexes, statistics).

15
Multi-Selecteasy

Which TWO metrics in Azure SQL Database indicate that the database might need to be scaled up?

Select 2 answers
A.Data IO percentage consistently below 20%
B.Session percent consistently below 10%
C.Log write percent consistently above 90%
D.Memory consumption consistently below 30%
E.DTU/CPU consumption consistently above 90%
AnswersC, E

Sustained log write percent above 90% signals the transaction log is saturating its provisioned throughput, a resource-bound bottleneck that scaling up the service tier or compute size directly relieves. This metric isolates log I/O pressure rather than general CPU load.

Why this answer

High DTU/CPU consumption (E) and high log write percent (C) both indicate that the database is approaching or hitting resource limits, suggesting a need to scale up. Options A, B, and D are incorrect because consistently low metrics (data IO, session percent, memory) indicate underutilization, not a need to scale up.

16
MCQhard

Refer to the exhibit. You have configured the automatic tuning policy as shown. After a week, you notice that an index has been dropped automatically, causing a critical query to run slowly. What should you do to prevent this in the future while still benefiting from automatic tuning?

A.Manually create the dropped index and mark it as a required index.
B.Enable Query Store to track index usage.
C.Set the dropIndex option state to Disabled in the tuning policy.
D.Disable automatic tuning entirely.
AnswerC

Disabling dropIndex prevents automatic tuning from dropping indexes while leaving other tuning options active. This satisfies the requirement to stop the specific action causing slow queries while still benefiting from automatic tuning for index creation and plan regression correction.

Why this answer

The dropIndex option in the automatic tuning policy controls whether SQL Server/Azure SQL can automatically drop indexes it deems unused. Setting dropIndex to Disabled preserves the createIndex and forceLastGoodPlan tuning actions while preventing the risky automatic drop that broke the critical query. This is the targeted fix that keeps automatic tuning benefits without the destructive behavior.

Exam trap

DP-300 often tests the misconception that you must disable automatic tuning entirely to stop one unwanted action, when in fact each tuning option (createIndex, dropIndex, forceLastGoodPlan) can be toggled independently.

How to eliminate wrong answers

Option A is wrong because marking an index as required is not a supported mechanism in the automatic tuning policy — there is no 'required index' flag that exempts an index from the dropIndex action. Option B is wrong because Query Store is already the underlying data source that automatic tuning uses; enabling it does not prevent index drops. Option D is wrong because disabling automatic tuning entirely throws away the beneficial createIndex and forceLastGoodPlan features, which is overkill for the stated requirement.

17
MCQmedium

You manage an Azure SQL Database that runs an online transaction processing (OLTP) workload. The database is in the General Purpose service tier with 4 vCores. During month-end processing, you observe that the database is hitting its maximum allowed log write throughput, causing delays. You need to increase the maximum log write throughput without changing the service tier. What should you do?

A.Scale up to 8 vCores.
B.Increase the max size of the database.
C.Enable the Business Critical service tier.
D.Configure active geo-replication.
AnswerA

In the General Purpose service tier, the maximum log write throughput scales with the number of vCores. Increasing from 4 to 8 vCores doubles the log write throughput limit, directly addressing the bottleneck without changing the service tier. This is the correct action because the scenario specifies that the service tier must remain the same, and scaling vCores is the only way to increase log throughput within General Purpose.

Why this answer

In the General Purpose service tier, log write throughput is directly proportional to the number of vCores. Scaling up vCores is the only way to increase log write throughput while remaining in the same service tier. The other options either change the service tier, affect storage size, or add replication overhead without solving the bottleneck.

Exam trap

The trap here is assuming that increasing database max size or changing service tier will increase log write throughput, when in fact only scaling vCores within the same tier does so.

18
MCQmedium

You manage an Azure SQL Database that runs a reporting workload. Users report that month-end reports are slow. You query sys.dm_db_resource_stats and observe that the average log write percentage is consistently high, but CPU and data IO are low. You need to reduce the impact of log write throughput on the workload. What should you do first?

A.Enable read scale-out and redirect reporting queries to the secondary replica.
B.Change the database to the Hyperscale service tier.
C.Scale up the database to a higher service tier or compute size.
D.Increase the database's max size.
AnswerC

The high log write percentage indicates that the database is approaching the log write throughput limit for its current service tier and compute size. Scaling up increases the log write rate limit, directly addressing the bottleneck. Since CPU and data IO are low, the workload is log-write-bound, so a higher tier or more vCores will provide more log throughput and improve report performance.

Why this answer

The sys.dm_db_resource_stats DMV shows resource usage as a percentage of the limit for the current service tier and compute size. A consistently high log write percentage with low CPU and data IO indicates the workload is constrained by the log write throughput limit. Scaling up to a higher service tier or compute size increases that limit, directly alleviating the bottleneck.

Other actions like increasing max size or read scale-out do not affect log write throughput.

Exam trap

The trap here is assuming that high log write percentage is caused by insufficient storage or CPU, when it actually reflects the log write throughput limit of the service tier and compute size.

19
Multi-Selectmedium

Which TWO configurations can help improve the performance of an Azure SQL Database experiencing high `WRITELOG` waits?

Select 2 answers
A.Enable Transparent Data Encryption (TDE).
B.Use in-memory OLTP to reduce log writes.
C.Increase the service tier to a higher performance level.
D.Enable Query Store.
E.Increase the frequency of database backups.
AnswersB, C

In-memory OLTP stores hot tables and their indexes in memory-optimised structures, so transactional changes are applied without conventional page-latch logging. This directly reduces the volume of log records generated per transaction, lowering WRITELOG waits caused by log-write throughput saturation on the target Azure SQL Database.

Why this answer

Option B is correct because In-Memory OLTP (memory-optimized tables and natively compiled stored procedures) reduces WRITELOG waits by minimizing transaction log traffic: memory-optimized tables use a separate, more efficient checkpoint mechanism, and for SCHEMA_ONLY durability and natively compiled procedures the log writes are drastically reduced, directly lowering log I/O pressure. Option C is correct because WRITELOG waits occur when the transaction log becomes the bottleneck; moving to a higher service tier (e.g., from S3 to S6, or to Premium/Business Critical) increases the provisioned log throughput and IOPS, allowing commits to flush to the log faster and reducing wait time. Option A is not correct because Transparent Data Encryption encrypts data at rest and adds CPU overhead rather than reducing log writes.

Option D is not correct because Query Store captures query execution statistics for performance troubleshooting; it does not reduce WRITELOG waits and can add minor overhead. Option E is not correct because more frequent backups increase log activity and I/O, potentially worsening rather than improving WRITELOG waits.

Exam trap

The trap here is that candidates often confuse WRITELOG waits with general I/O bottlenecks and select backup frequency or TDE, not realizing that only reducing log write volume (via in-memory OLTP) or increasing log write speed (via higher service tier) directly resolves the wait type.

20
MCQhard

You are a database administrator for an Azure SQL Managed Instance that hosts a critical OLTP database. You notice that the instance is experiencing high PAGELATCH_EX waits on tempdb allocation pages. You need to reduce this contention without changing the service tier. What should you do?

A.Configure Resource Governor to limit tempdb usage.
B.Enable Accelerated Database Recovery (ADR) on the instance.
C.Move the tempdb files to a faster storage tier.
D.Add more tempdb data files.
AnswerD

PAGELATCH_EX waits on tempdb allocation pages (such as PFS, GAM, SGAM) occur when many concurrent sessions allocate space in tempdb. Adding more tempdb data files distributes the allocation load across multiple files, reducing contention on allocation pages. This is a standard remedy for tempdb allocation bottlenecks. Since the service tier cannot change, adding files is the appropriate action to alleviate the contention without scaling up.

Why this answer

PAGELATCH_EX waits on tempdb allocation pages are caused by multiple concurrent sessions trying to allocate space on the same pages. Adding more tempdb data files spreads the allocation across multiple files, reducing contention. This is a well-known tuning technique for tempdb.

Other options do not address the root cause: ADR affects recovery, Resource Governor limits resources, and faster storage addresses I/O waits, not latch contention. Therefore, adding more tempdb data files is the correct solution.

Exam trap

The trap here is thinking that faster storage or Resource Governor will fix latch contention, when the issue is concurrent allocation on the same pages.

21
Multi-Selecthard

You are responsible for performance tuning of an Azure SQL Database that hosts a customer relationship management (CRM) application. The database has several tables with millions of rows. Users report that a report query that joins four tables is slow. You examine the query execution plan and notice that the database engine is using an Index Spool (Lazy Spool) operator. Which TWO actions should you take to improve query performance? (Choose two.)

Select 2 answers
A.Disable parallelism for the query using the MAXDOP 1 hint.
B.Increase the DTU or vCore count of the database.
C.Create appropriate indexes on the columns used in joins and filters.
D.Rewrite the query using table hints to force a specific join order.
E.Update statistics on all tables involved in the query.
AnswersC, E

Index Spool (Lazy Spool) indicates the optimiser repeatedly rewinds intermediate results because no suitable index supports the joins and predicates. Creating indexes on the join and filter columns gives the engine seek access, eliminating the spool and reducing the millions of rows scanned.

Why this answer

Option C is correct because an Index Spool (Lazy Spool) operator typically appears when the optimizer lacks a suitable index and must build a temporary spool to satisfy repeated lookups or joins; creating appropriate indexes on the join and filter columns gives the optimizer a permanent access path, eliminating the need for the spool. Option E is correct because stale or missing statistics cause the optimizer to misestimate cardinality, which frequently leads to spool operators; updating statistics on all involved tables provides accurate row-count estimates so the optimizer can choose a more efficient plan. Option A is not appropriate because MAXDOP 1 disables parallelism and does not address the root cause of a spool operator, and it can actually hurt performance on large reporting queries.

Option B is not the right fix because adding DTUs or vCores increases resources but does not change the plan shape or remove the spool, so the underlying inefficiency remains. Option D is not recommended because forcing join order with table hints is fragile, overrides the optimizer's cost-based decisions, and does not resolve the missing index or statistics problem that caused the spool.

Exam trap

The trap here is that candidates often assume an Index Spool is always a performance booster (like a regular index seek) or that increasing hardware resources (Option B) is the quick fix, when in fact the spool is a costly workaround for missing permanent indexes and stale statistics.

22
MCQmedium

You manage an Azure SQL Database that runs a reporting workload. Users report that queries are slow only when they filter on a specific customer region, and the slowness began after a large data load. You run Query Store and identify a plan that regressed. You want the database engine to automatically detect and revert to the last known good plan for that query. What should you configure?

A.Enable automatic tuning with the CREATE_INDEX option.
B.Set the database compatibility level to the latest version.
C.Enable automatic tuning with the FORCE_LAST_GOOD_PLAN option.
D.Configure Query Store to use AUTO plan capture mode.
AnswerC

FORCE_LAST_GOOD_PLAN is an automatic tuning feature in Azure SQL Database that monitors for plan regressions and automatically forces the last known good plan when a regression is detected. It is specifically designed for the scenario where a query becomes slower due to a plan change, which matches the reported symptom.

Why this answer

Automatic tuning with FORCE_LAST_GOOD_PLAN is the correct choice because it directly addresses plan regression by automatically reverting to a previously good plan when performance degrades. The other options either collect data without acting, create indexes, or change compatibility levels, none of which provide the automatic regression correction required.

Exam trap

The trap here is confusing automatic tuning features that create objects (like indexes) with those that correct existing plan regressions.

23
MCQmedium

You manage an Azure SQL Database that runs a reporting workload. Users report that queries against a large fact table sometimes take much longer than usual, and you suspect that a plan regression occurred after a recent statistics update. You need to identify which queries have a plan that changed and performed worse, without deploying any external monitoring tools. What should you use?

A.SQL Server Profiler traces collected to a file
B.Azure SQL Database automatic tuning's CREATE INDEX recommendations
C.Query Store's Regressed Queries view
D.sys.dm_db_index_physical_stats
AnswerC

Query Store automatically captures query plans and runtime statistics, and its Regressed Queries view compares plan performance over time to highlight queries whose plan changed and became slower. Because the feature is built into the database, no external monitoring tool is required, and it directly answers which queries regressed after the statistics update.

Why this answer

Query Store persists query text, plans, and runtime statistics inside the database and includes a Regressed Queries view that compares plan performance across time windows. When a statistics update causes a plan change that degrades a reporting query, that view surfaces the affected queries with their historical plans and metrics, letting you force a known-good plan or take other corrective action without external monitoring.

Exam trap

The trap here is assuming that a performance dashboard or index tool will identify plan regressions, when only Query Store tracks plan changes and their performance impact over time.

24
MCQeasy

You are monitoring an Azure SQL Database that is running a mission-critical workload. You notice that the DTU consumption is consistently above 90% during peak hours. You need to recommend a solution to reduce the DTU consumption. What should you recommend?

A.Scale up to a higher service tier or increase DTUs
B.Scale down to a lower service tier
C.Enable geo-replication
D.Enable read scale-out
AnswerA

Scaling up raises the provisioned compute ceiling, so the same workload consumes a smaller proportion of available DTUs. This directly satisfies the stem's constraint of sustained consumption above 90% during peak hours, where the database is genuinely resource-bound rather than suffering from inefficient queries or missing indexes.

Why this answer

When DTU consumption consistently exceeds 90%, the database is resource-constrained, leading to performance degradation. Scaling up to a higher service tier or increasing DTUs directly provides more CPU, memory, and I/O resources, alleviating the bottleneck and reducing DTU utilization percentage. This is the standard corrective action for sustained high DTU usage in Azure SQL Database.

Exam trap

The trap here is that candidates may confuse high DTU consumption with a need for high availability or read scaling, but the correct response is to increase resource capacity via scaling up.

How to eliminate wrong answers

Option B is wrong because scaling down reduces available resources, which would worsen the high DTU consumption and likely cause performance failures. Option C is wrong because geo-replication provides disaster recovery and read-only replicas, but does not reduce DTU consumption on the primary database. Option D is wrong because read scale-out offloads read-only workloads to a replica, but the primary database's DTU consumption remains unchanged for write operations and other workloads.

25
MCQeasy

You have an Azure SQL Managed Instance and notice that automatic tuning is not enabled. You want to automatically force a plan that performed better than the existing plan. What should you enable?

A.Automatic index management (DROP INDEX)
B.Automatic index management (CREATE INDEX)
C.Automatic plan correction (FORCE_LAST_GOOD_PLAN)
D.Intelligent Insights
AnswerC

Automatic plan correction detects regressions where a previously good plan is replaced by a worse one, then forces the last known good plan using FORCE_LAST_GOOD_PLAN. This directly satisfies the requirement to automatically force a better-performing plan, which plain automatic tuning options such as CREATE INDEX or DROP INDEX do not provide.

Why this answer

Automatic plan correction (FORCE_LAST_GOOD_PLAN) is the automatic tuning feature that detects plan regressions and forces the last known good plan. It is designed exactly for the scenario where a plan performs worse than a previous plan. Enabling it allows Azure SQL Managed Instance to automatically correct plan choice regressions.

Exam trap

DP-300 often tests the specific automatic tuning options — candidates confuse automatic index management with automatic plan correction, but only FORCE_LAST_GOOD_PLAN addresses plan regression.

How to eliminate wrong answers

Option A is wrong because automatic index management (DROP INDEX) deals with removing unused or duplicate indexes, not plan forcing. Option B is wrong because automatic index management (CREATE INDEX) creates missing indexes, which addresses index-related performance but not plan regression. Option D is wrong because Intelligent Insights is a diagnostic tool that provides alerts and root cause analysis, but it does not automatically force plans.

26
MCQeasy

You are configuring alerts for an Azure SQL Database. You need to be notified when the database reaches 90% of its allocated storage. Which Azure Monitor alert signal should you use?

A.storage
B.storage_percent
C.physical_data_read_percent
D.dtu_consumption_percent
AnswerB

The storage_percent metric in Azure Monitor for Azure SQL Database reports the percentage of storage space used relative to the maximum data size. Setting an alert on this metric at 90% directly meets the requirement. This metric is specific to Azure SQL Database and is the correct signal to monitor storage utilization.

Why this answer

Azure SQL Database exposes the storage_percent metric, which directly reports the percentage of allocated storage used. Setting an alert on this metric at 90% will notify you when storage utilization reaches the threshold. Other metrics like storage (absolute size) or dtu_consumption_percent (compute) do not provide the required percentage of storage usage.

Exam trap

The trap here is confusing storage_percent with storage; the former is a percentage, the latter is an absolute value.

27
MCQmedium

You are a database administrator for a large e-commerce platform using Azure SQL Database. You notice that a specific query frequently causes high CPU usage during peak hours. The query is a SELECT with multiple JOINs and a WHERE clause on a non-clustered index. You have already updated statistics and rebuilt indexes. What should you do next to optimize performance?

A.Use Query Store to identify and force a better execution plan.
B.Enable automatic tuning to let Azure SQL Database handle the issue.
C.Add more indexes on the columns used in JOINs and WHERE clause.
D.Create a read replica and offload the query to it.
AnswerA

Query Store captures execution plans and runtime statistics, letting you identify the regressed plan causing high CPU and force a superior one via a plan guide. This directly addresses the stem's constraint: statistics and indexes are already refreshed, so the remaining lever is plan choice, not stale metadata.

Why this answer

When statistics are updated and indexes rebuilt but a specific query still causes high CPU, the next step is to use Query Store to identify a better execution plan and force it. Query Store captures plan history and runtime stats, so you can pinpoint a previously good plan (e.g., before a plan regression) and force it, immediately stabilizing performance without schema changes.

Exam trap

DP-300 often tests the sequence of tuning actions — candidates jump to adding indexes or read replicas, but the exam expects you to recognize that after statistics/index maintenance, plan-level remediation via Query Store is the correct next step for a specific high-CPU query.

How to eliminate wrong answers

Option B is wrong because automatic tuning may not address this specific query's plan regression and can take time to act — it is not the targeted next step when you have already identified the problematic query. Option C is wrong because adding more indexes on JOIN/WHERE columns without evidence can increase write overhead and may not fix a plan-choice problem; the query already uses a non-clustered index. Option D is wrong because creating a read replica offloads read workload but does not fix the high-CPU execution plan on the primary, and it adds cost and complexity.

28
MCQhard

You are optimizing a data warehouse workload on Azure SQL Database. The workload involves large batch inserts and nightly aggregations. You notice that the transaction log is growing excessively during the batch inserts, causing performance degradation. You need to reduce log growth without affecting data consistency. What should you do?

A.Change the database recovery model to Simple.
B.Use bulk insert operations with TABLOCK hint to enable minimal logging.
C.Create a partition function and scheme to spread the inserts.
D.Increase the maximum log size of the database.
AnswerB

Minimal logging reduces log space for large imports under full recovery model.

Why this answer

Using minimally logged operations (e.g., bulk insert with TABLOCK) reduces log space for large imports under the full recovery model, but requires specific conditions. Option A is wrong because simple recovery model is not supported in Azure SQL Database (only FULL, BULK_LOGGED is not available). Option C is wrong because partitioning does not reduce log growth.

Option D is wrong because increasing log size only accommodates growth, does not prevent it.

29
MCQhard

You need to optimize costs for SalesDB, which is used only during business hours (8 AM to 6 PM). The database currently runs 24/7. Which change should you make?

A.Reduce storage to 512 GB.
B.Change tier to Hyperscale.
C.Enable serverless with auto-pause enabled.
D.Reduce capacity to 2 vCores.
AnswerC

Serverless with auto-pause suspends compute after inactivity and resumes on connection, so SalesDB only incurs compute cost during the 8 AM to 6 PM window. Storage charges persist, but idle overnight and weekend compute is eliminated.

Why this answer

Azure SQL Database serverless with auto-pause enabled automatically pauses the database after a period of inactivity and resumes on the next connection, so the database incurs no compute charges outside business hours. This directly matches the 8 AM–6 PM usage pattern and reduces cost without manual intervention.

Exam trap

DP-300 often tests cost optimization by presenting idle-time scenarios — the trap is choosing 'reduce capacity' or 'reduce storage' because they sound like cost cuts, while missing that only auto-pause eliminates compute charges during idle hours.

How to eliminate wrong answers

Option A is wrong because reducing storage to 512 GB lowers storage cost only, leaving the 24/7 compute charges unchanged — compute dominates the bill. Option B is wrong because Hyperscale is a high-performance tier designed for large databases; it typically increases cost and does not address idle-time savings. Option D is wrong because reducing capacity to 2 vCores lowers the hourly rate but the database still runs and bills 24/7, so it does not exploit the idle window.

30
MCQhard

You are tuning an Azure SQL Database that uses the General Purpose service tier. The database experiences high transaction log write waits during peak hours, and you observe that the log rate is frequently near its limit. You need to increase the maximum log rate for the database. What should you do?

A.Change the database to the Business Critical service tier.
B.Enable accelerated database recovery (ADR) on the database.
C.Scale up the database to a higher compute size within the General Purpose tier.
D.Increase the maximum storage size of the database.
AnswerA

The Business Critical tier uses local SSD storage and has a significantly higher maximum log rate compared to General Purpose. This directly addresses the log write wait issue by providing faster log throughput. While it increases cost, it is the correct action when the log rate is the bottleneck and needs to be raised beyond the General Purpose limit.

Why this answer

The maximum log rate in Azure SQL Database is determined by the service tier and hardware generation. General Purpose has a lower log rate limit than Business Critical, which uses local SSD and offers higher throughput. To increase the log rate, you must move to Business Critical.

Scaling compute within General Purpose or increasing storage does not raise the log rate limit. ADR improves recovery but not log throughput.

Exam trap

The trap here is thinking that adding more vCores or storage will increase the log rate, when the limit is actually tied to the service tier's storage subsystem.

31
Multi-Selectmedium

You are monitoring an Azure SQL Database that is experiencing high DTU consumption. You need to identify the queries that are causing high resource usage. Which two data sources can you use? (Choose two.)

Select 2 answers
A.sys.dm_os_wait_stats
B.Query Store
C.sys.dm_exec_query_stats
D.sys.dm_db_index_usage_stats
E.sys.dm_io_virtual_file_stats
AnswersB, C

Query Store persists execution plans, runtime statistics and wait categories per query, letting you rank statements by CPU, duration or logical reads. This directly identifies the queries driving high DTU consumption on the Azure SQL Database.

Why this answer

Query Store (Option B) captures a history of query execution plans and runtime statistics, allowing you to identify queries with high CPU, I/O, or duration. sys.dm_exec_query_stats (Option C) returns aggregate performance statistics for cached query plans, including total CPU time and logical reads, which directly points to resource-intensive queries. Both are valid sources for diagnosing high DTU consumption in Azure SQL Database.

Exam trap

The trap here is that candidates often confuse wait statistics (sys.dm_os_wait_stats) with query-level performance data, but wait stats show system-wide bottlenecks, not the specific queries causing high DTU.

32
Multi-Selecteasy

You have an Azure SQL Database that uses automatic tuning. Which TWO benefits does automatic tuning provide?

Select 2 answers
A.Automatically scale up the database service tier
B.Automatically identify and correct query plan regressions
C.Automatically create read replicas
D.Automatically update statistics
E.Automatically create missing indexes
AnswersB, E

Automatic tuning detects plan regressions by comparing query performance over time and forces the last known good plan, restoring throughput without manual intervention. This directly addresses the regression-correction benefit, distinct from index creation or parameter forcing.

Why this answer

Options B and E are correct. Automatic tuning can identify and correct query plan regressions (B) and automatically create missing indexes (E). Option A is wrong because automatic tuning does not automatically scale the service tier; that's auto-scale.

Option C is wrong because automatic tuning does not automatically create read replicas. Option D is wrong because automatic tuning does not automatically update statistics.

Exam trap

Automatic tuning in Azure SQL Database includes only index creation and plan regression correction. It does not include auto-scaling, read replicas, or statistics updates.

33
Multi-Selectmedium

You are configuring automatic tuning for an Azure SQL Database. Which THREE recommendations can be applied automatically without manual approval?

Select 3 answers
A.FORCE LAST GOOD PLAN
B.Modify statistics
C.CREATE INDEX
D.DROP INDEX
E.Enable database compression
AnswersA, C, D

FORCE LAST GOOD PLAN automatically reverts a query to its previous good execution plan when a regression is detected, and it is applied without approval once automatic tuning is enabled. It satisfies the stem's constraint of recommendations applied automatically.

Why this answer

Azure SQL Database automatic tuning can automatically apply three types of recommendations: FORCE LAST GOOD PLAN (A), which reverts a query to a previously known good execution plan when a plan regression is detected; CREATE INDEX (C), which adds missing indexes identified by the query optimizer; and DROP INDEX (D), which removes redundant or unused indexes. These three are the built-in automatic tuning actions that Azure SQL Database can execute without manual approval, provided automatic tuning is enabled. Modifying statistics (B) is not an automatic tuning action — statistics updates are handled separately by the database engine's automatic statistics maintenance, not by the automatic tuning feature.

Enabling database compression (E) is a manual performance optimization and is not part of the automatic tuning recommendation set.

Exam trap

DP-300 often tests the exact set of automatic tuning options — candidates include 'modify statistics' or 'compression' because they sound like tuning actions, but only CREATE INDEX, DROP INDEX, and FORCE LAST GOOD PLAN are automatic tuning recommendations.

34
Drag & Dropmedium

Drag and drop the steps to configure an Azure SQL Managed Instance link for disaster recovery in the correct order.

Drag or tap steps into the slots.

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

Why this order

The link requires a secondary instance first, then establishing the link, configuring as readable, monitoring, and failing over when needed.

35
Multi-Selectmedium

You manage an Azure SQL Managed Instance. You need to monitor storage space usage. Which TWO dynamic management views can you use?

Select 2 answers
A.sys.dm_db_partition_stats
B.sys.dm_exec_query_stats
C.sys.dm_db_file_space_usage
D.sys.dm_db_log_space_usage
E.sys.dm_os_performance_counters
AnswersC, D

`sys.dm_db_file_space_usage` returns page counts per database file, split into allocated, unallocated and mixed-extent categories, letting you track space consumed within each data and log file. This directly satisfies the requirement to monitor storage space usage on the managed instance, since it exposes per-file consumption without relying on instance-level or host-level metrics.

Why this answer

Options C and D are correct. sys.dm_db_file_space_usage provides data file space usage, and sys.dm_db_log_space_usage provides transaction log space usage. Option A is incorrect because sys.dm_db_partition_stats shows row counts and partition-level information, not storage space. Option B is incorrect because sys.dm_exec_query_stats is for query performance metrics.

Option E is incorrect because sys.dm_os_performance_counters includes various performance counters but does not directly show per-database space usage.

36
MCQmedium

You manage an Azure SQL Database that runs a reporting workload. Users report that a complex stored procedure occasionally returns results in under 5 seconds but sometimes takes over 60 seconds. You have enabled Query Store with the default settings. You need to identify the plan that is causing the slow executions and force the faster plan. Which Query Store report should you use?

A.Top Resource Consuming Queries
B.Regressed Queries
C.Queries With High Variation
D.Query Wait Statistics
AnswerC

Queries With High Variation highlights queries that have multiple execution plans with significantly different performance metrics. This directly addresses the scenario where a stored procedure sometimes runs fast and sometimes slow. From this report, you can drill into the query and force the better-performing plan, resolving the inconsistent performance.

Why this answer

The stored procedure alternates between fast and slow executions, which indicates multiple execution plans with varying performance. The Queries With High Variation report in Query Store is designed to surface exactly this pattern. It allows you to compare plans and force the efficient plan, stabilizing performance.

The other reports focus on resource consumption, waits, or regressions, but not on plan-to-plan variability.

Exam trap

The trap here is assuming that Regressed Queries will show plan variability, when it only shows queries that have degraded relative to a baseline, not those with multiple competing plans.

37
MCQmedium

You are tuning an Azure SQL Database that uses the General Purpose service tier. The database experiences performance issues during peak hours, and you notice a high number of PAGEIOLATCH_SH waits. You need to reduce these waits. What should you do?

A.Enable Query Store.
B.Switch to the Business Critical service tier.
C.Increase the database's max size.
D.Scale up the database to a higher compute size.
AnswerB

The Business Critical service tier uses local SSD storage, which provides lower I/O latency compared to the remote storage used in General Purpose. This directly reduces PAGEIOLATCH_SH waits by improving I/O performance. Therefore, switching to Business Critical is the most effective action to address these waits.

Why this answer

PAGEIOLATCH_SH waits indicate that queries are waiting for data pages to be read from disk. In the General Purpose tier, storage is remote and can introduce latency. The Business Critical tier uses local SSD, which significantly reduces I/O latency and thus these waits.

Other actions like enabling Query Store or increasing max size do not address the underlying I/O bottleneck.

Exam trap

The trap here is assuming that scaling up compute size will always reduce I/O waits, but in General Purpose the storage architecture is the limiting factor, and moving to Business Critical is the direct fix.

38
MCQmedium

Your Azure SQL Managed Instance is configured with a long-term backup retention policy of 10 years. You need to reduce storage costs while still meeting a compliance requirement to retain monthly backups for 7 years. What should you do?

A.Configure a new long-term retention policy that retains monthly backups for 7 years.
B.Disable long-term backup retention and rely solely on point-in-time restore backups.
C.Set the point-in-time restore retention period to 7 years.
D.Migrate the database to Azure SQL Database and use geo-redundant storage.
AnswerA

Replacing the 10-year policy with a 7-year monthly retention schedule satisfies the compliance requirement while eliminating three years of unnecessary stored backups. Long-term retention policies are configurable per database, so the change directly reduces storage consumption without affecting the mandated retention window.

Why this answer

Azure SQL Managed Instance long-term retention (LTR) policies are defined per-database and specify separate weekly, monthly, and yearly retention periods; you can set the monthly retention to 7 years while removing or shortening the other tiers. This directly satisfies the compliance requirement (monthly backups kept 7 years) while eliminating the storage cost of the unnecessary 10-year policy. LTR backups are stored in Azure Blob storage and billed separately from the instance, so right-sizing the policy is the correct cost-optimization action.

Exam trap

DP-300 often tests the confusion between PITR retention (max 35 days) and LTR retention (up to 10 years), tricking candidates into thinking PITR can be extended to meet long-term compliance windows.

How to eliminate wrong answers

Option B is wrong because point-in-time restore (PITR) backups are limited to a maximum of 35 days and cannot satisfy a 7-year retention requirement — disabling LTR would violate compliance. Option C is wrong because the PITR retention period on SQL Managed Instance maxes out at 35 days; it cannot be set to 7 years, and PITR is not a substitute for LTR. Option D is wrong because migrating to Azure SQL Database does not address the retention requirement, changes the deployment model unnecessarily, and geo-redundant storage affects durability/replication, not retention duration.

39
Multi-Selectmedium

Which TWO metrics from sys.dm_db_resource_stats should you monitor to identify a disk IO bottleneck in an Azure SQL Database?

Select 2 answers
A.avg_cpu_percent
B.max_size_percent
C.avg_data_io_percent
D.avg_memory_usage_percent
E.avg_log_write_percent
AnswersC, E

avg_data_io_percent reports the percentage of the data-file IOPS limit consumed, directly exposing data disk saturation. Monitoring it identifies a disk IO bottleneck caused by read or write activity against data files, satisfying the stem's requirement in Azure SQL Database.

Why this answer

The two correct metrics are C, avg_data_io_percent, and E, avg_log_write_percent. avg_data_io_percent reports the percentage of the data-file IOPS/throughput limit consumed by the database, so sustained values near 100% directly indicate a data-file disk IO bottleneck. avg_log_write_percent reports the percentage of the log-write throughput limit consumed, so elevated values reveal a transaction-log write bottleneck. Together these two IO-related counters isolate disk IO pressure in Azure SQL Database. The unmarked options do not belong: avg_cpu_percent (A) measures compute utilization, max_size_percent (B) tracks storage-space consumption against the size limit, and avg_memory_usage_percent (D) measures memory pressure, none of which identify disk IO bottlenecks.

Exam trap

DP-300 often tests whether candidates can map a symptom (disk IO bottleneck) to the correct DMV columns — the trap is picking avg_cpu_percent or avg_memory_usage_percent because they are the most familiar resource metrics.

40
MCQeasy

You are monitoring an Azure SQL Database using sys.dm_db_wait_stats. You see a high percentage of WRITELOG waits. What is the most likely cause?

A.Tempdb has allocation contention.
B.The transaction log is on a slow I/O subsystem.
C.Queries are blocked by locks.
D.CPU is under pressure.
AnswerB

WRITELOG waits occur when sessions wait for transaction log writes to complete. A high proportion indicates the log's I/O subsystem cannot keep pace with commit throughput, making slow log storage the direct cause rather than data file or CPU contention.

Why this answer

WRITELOG waits occur when a session is waiting for the transaction log to be written to disk, typically at commit time. A high percentage of WRITELOG waits therefore points to slow transaction log I/O — the log disk cannot keep up with the write rate, so commits stall.

Exam trap

DP-300 often tests whether candidates can map wait types to root causes — the trap is confusing WRITELOG (log I/O) with PAGELATCH (tempdb allocation) or LCK (blocking).

How to eliminate wrong answers

Option A is wrong because tempdb allocation contention shows up as PAGELATCH_* waits (e.g., PAGELATCH_EX/UP on tempdb allocation pages), not WRITELOG. Option C is wrong because blocking is reflected in LCK_* waits (LCK_M_S, LCK_M_X, etc.), not WRITELOG. Option D is wrong because CPU pressure manifests as SOS_SCHEDULER_YIELD, CXPACKET, or THREADPOOL waits, not WRITELOG.

41
MCQeasy

You are monitoring an Azure SQL Database using dynamic management views (DMVs). You want to identify the top queries by total CPU time over the last hour. Which DMV should you query?

A.sys.dm_exec_query_stats
B.sys.dm_exec_requests
C.sys.dm_db_index_usage_stats
D.sys.dm_db_resource_stats
AnswerA

sys.dm_exec_query_stats aggregates cumulative execution statistics per cached query plan, exposing total_worker_time as the CPU metric. Querying it ordered by total_worker_time DESC yields the top CPU-consuming queries, satisfying the requirement to rank queries by total CPU time over the last hour.

Why this answer

sys.dm_exec_query_stats exposes cumulative per-plan statistics including total_worker_time, which represents total CPU time consumed by a query plan. Aggregating and ordering by total_worker_time identifies the top CPU-consuming queries. It is the standard DMV for query-level CPU analysis in Azure SQL Database.

Exam trap

DP-300 often tests the distinction between cumulative query statistics (sys.dm_exec_query_stats) and instantaneous or resource-level DMVs — candidates pick sys.dm_db_resource_stats because it mentions 'resource' and sounds like CPU monitoring.

How to eliminate wrong answers

Option B is wrong because sys.dm_exec_requests only shows currently executing requests, so it cannot report total CPU time over the last hour for completed queries. Option C is wrong because sys.dm_db_index_usage_stats tracks index seek/scan/lookup counts and last usage timestamps, not query CPU consumption. Option D is wrong because sys.dm_db_resource_stats reports database-level resource utilization (CPU percentage, IO, memory) at roughly 15-second intervals, not per-query CPU totals.

42
MCQhard

You are reviewing an Azure Resource Manager template snippet for configuring long-term backup retention for an Azure SQL Database. The deployment fails with an error indicating the storage account is not accessible. What is the most likely cause?

A.The server name in the template does not match the actual server
B.The storage container URI is incorrectly formatted
C.The SAS token has expired or is invalid
D.The database is not in the same region as the storage account
AnswerC

Long-term retention writes backups to an Azure Storage account using a SAS token embedded in the ARM template. If that token has expired or is malformed, the storage account rejects access, producing exactly the accessibility failure described.

Why this answer

The error indicates that the storage account is not accessible. In the template, a SAS token is used to authenticate access to the storage container for long-term backup retention. The most common reason for this error is that the SAS token has expired or is invalid, as SAS tokens have an expiration date.

Therefore, Option C is correct. Option A is incorrect because the server name mismatch would cause a different error. Option B is incorrect because the URI format may be valid, but the token is the issue.

Option D is incorrect because cross-region storage is supported for long-term retention.

43
MCQmedium

You are managing an Azure SQL Database that runs a critical line-of-business application. Users report that a specific query is running slower than usual. You identify that the query is performing a clustered index scan on a large table with over 10 million rows. The table has a clustered index on an identity column and a nonclustered index on a frequently filtered column. You need to minimize the query execution time without adding additional indexes. What should you do?

A.Increase the service tier of the Azure SQL Database to provide more resources.
B.Update all statistics on the table.
C.Rebuild the clustered index to reduce fragmentation.
D.Update the statistics on the nonclustered index only.
AnswerB

Updating all statistics on the table refreshes the histograms and density information for every index and column, giving the query optimizer a current view of data distribution. With accurate cardinality estimates, the optimizer can determine that the predicate is selective and choose an index seek instead of a scan. This is the targeted fix when a plan becomes suboptimal due to stale statistics, and it is the only option here that directly addresses the optimizer's input.

Why this answer

The query is performing a clustered index scan, which means SQL Server is reading all rows in the table. Outdated statistics can cause the optimizer to choose a scan instead of a more efficient seek. Updating all statistics on the table (option B) provides the optimizer with fresh distribution information, potentially allowing it to choose a better execution plan that avoids the scan, thereby reducing query execution time without adding indexes.

Exam trap

The trap here is that candidates often assume a scan is always due to fragmentation (option C) or resource constraints (option A), when in fact the most common cause is stale statistics leading to a poor execution plan choice.

How to eliminate wrong answers

Option A is wrong because increasing the service tier provides more resources (CPU, IO, memory) but does not address the root cause of a suboptimal execution plan; the query may still perform a scan, just faster, and this incurs additional cost. Option C is wrong because rebuilding the clustered index reduces fragmentation, but fragmentation is unlikely to cause a scan to be chosen over a seek; the issue is plan choice, not physical index structure. Option D is wrong because updating only the nonclustered index statistics does not help if the optimizer is considering the clustered index scan; the statistics on the clustered index (or the entire table) must be updated to influence the plan choice for that scan.

44
Multi-Selectmedium

You are optimizing an Azure SQL Database that uses the Hyperscale service tier. You need to reduce the time it takes to perform a database restore. Which TWO factors directly affect the restore time? (Choose two.)

Select 2 answers
A.The backup storage redundancy option.
B.The service level objective (SLO) of the database.
C.The number of transaction log records that need to be replayed.
D.The number of page servers that need to be attached.
E.The size of the database's data files.
AnswersC, D

In Hyperscale, restore operations involve attaching the database to the existing page servers and then replaying the transaction log to bring the database to a consistent point. The amount of log that must be replayed directly impacts the restore duration. A larger log tail results in longer restore times.

Why this answer

In Hyperscale, restore performance is primarily determined by the amount of transaction log that must be replayed and the number of page servers that need to be attached. Data file size and backup redundancy do not directly affect restore time, and the SLO influences resources but not the fundamental restore process.

Exam trap

The trap here is assuming that database size dictates restore time; in Hyperscale, the distributed architecture makes log replay and page server count the key factors.

45
MCQhard

Your Azure SQL Database is configured with Active Geo-Replication to a secondary region for disaster recovery. During a routine failover drill, you notice that after failover, the application cannot connect to the new primary because the login credentials fail. The logins are contained in the master database. What is the most likely cause?

A.The DNS name of the secondary server changed after failover.
B.The SQL logins in the master database are not replicated to the secondary server.
C.The firewall rules on the secondary server do not allow connections from the application IP.
D.The application uses contained database users, which are not replicated.
AnswerB

Active Geo-Replication replicates user databases only; the logical server's master database, which holds server-level SQL logins, is not synchronised to the secondary server. After failover, those logins are absent, so authentication fails. Contained database users, stored inside the user database, would replicate and continue working.

Why this answer

When Active Geo-Replication is configured for Azure SQL Database, the secondary server is a separate logical server in a different region. The master database, which contains server-level logins, is not replicated as part of geo-replication; only the user databases are replicated. Therefore, after a failover, the new primary server does not have the server-level logins from the original primary, causing authentication failures for applications using those logins.

Exam trap

The trap here is that candidates often assume all server-level configurations, including logins, are automatically replicated with geo-replication, but in reality, only user databases are replicated, not the master database.

How to eliminate wrong answers

Option A is wrong because the DNS name of the secondary server does not change after failover; the failover process updates the geo-replication listener or the application connection string must point to the secondary server's DNS name, but the DNS name itself remains static. Option C is wrong because firewall rules are replicated as part of the server-level configuration when using geo-replication, and the question specifically states the issue is login credentials failing, not network connectivity. Option D is wrong because contained database users are stored within the user database itself and are automatically replicated with geo-replication, so they would not cause a login failure after failover.

46
MCQhard

You are a database administrator for a large financial services company. You manage an Azure SQL Database in the Business Critical tier with a failover group configured for disaster recovery. The database has a heavy OLTP workload. You notice that the secondary replica is experiencing high log write latency, impacting the primary's performance due to synchronous commit. You need to minimize the performance impact on the primary while maintaining disaster recovery capabilities. What should you do?

A.Change the backup storage redundancy of the secondary replica to locally-redundant storage (LRS).
B.Add an additional secondary replica to distribute the log write load.
C.Change the failover group to use asynchronous commit mode.
D.Decrease the service tier of the secondary replica to General Purpose.
AnswerC

Changing to asynchronous commit mode allows the primary to commit without waiting for the secondary to harden the log. This directly reduces performance impact on the primary while still maintaining disaster recovery capabilities, albeit with possible data loss.

Why this answer

Changing the failover group to asynchronous commit mode decouples the primary's transaction commit from the secondary's log write. In synchronous mode, the primary waits for the secondary to confirm log hardening, which causes performance impact when the secondary has high log write latency. Asynchronous commit allows the primary to commit without waiting, thus minimizing performance impact while still maintaining disaster recovery capabilities (the secondary will apply changes eventually, though with potential data loss if a failover occurs before sync).

Option A is incorrect because backup storage redundancy (LRS vs GRS) only affects backup storage, not live log write latency for replication. Option B is incorrect because adding another secondary does not reduce latency on the existing secondary; it could even increase overhead. Option D is incorrect because decreasing the secondary's service tier to General Purpose would reduce its I/O capacity and likely worsen log write latency.

47
MCQmedium

A production Azure SQL Database is experiencing high CPU usage during peak hours. The database uses the S3 service tier. You need to reduce CPU usage without changing the service tier. Which action should you take?

A.Increase the maximum number of concurrent workers.
B.Identify and create missing indexes.
C.Reduce MAXDOP to 1.
D.Increase MAXDOP to 8.
AnswerB

Missing indexes force full table or index scans, so creating them lets the query optimiser seek directly to matching rows, cutting CPU consumed per query. This satisfies the constraint of reducing CPU usage while remaining on the S3 service tier.

Why this answer

High CPU usage in an S3 Azure SQL Database often stems from inefficient query plans caused by missing indexes. Creating appropriate indexes reduces the number of rows scanned and the CPU cycles needed for operations like key lookups and sorting, directly lowering CPU consumption without changing the service tier.

Exam trap

The trap here is that candidates often assume reducing MAXDOP or increasing workers will fix CPU issues, but without addressing the root cause (poor query plans from missing indexes), these changes either exacerbate resource contention or fail to reduce CPU usage.

How to eliminate wrong answers

Option A is wrong because increasing the maximum number of concurrent workers (MAX_WORKERS) would allow more parallel queries to run, likely increasing CPU contention and worsening the problem. Option C is wrong because reducing MAXDOP to 1 forces all queries to run serially, which can increase CPU time per query due to lack of parallelism and may degrade performance for complex queries. Option D is wrong because increasing MAXDOP to 8 on an S3 tier (which has limited resources) can lead to excessive parallelism, causing CPU thrashing and inefficient resource utilization.

48
MCQeasy

You are a database administrator for a large financial services company. You need to ensure that all queries that read sensitive customer data use an optimized execution plan. What feature should you enable to automatically identify and fix regressed query plans?

A.Query Store
B.Automatic Tuning
C.Intelligent Insights
D.Database Advisor for SQL Database
AnswerB

Automatic Tuning continuously monitors query execution on Azure SQL and automatically detects plan regressions, forcing a corrected plan without manual intervention. This directly satisfies the requirement to identify and fix regressed plans for sensitive-data queries.

Why this answer

Automatic Tuning in Azure SQL Database and SQL Managed Instance automatically identifies and fixes plan regressions by forcing the last known good plan, and can also create/drop indexes. It directly addresses the requirement to automatically identify and fix regressed query plans without manual intervention.

Exam trap

DP-300 often tests the confusion between Query Store (monitoring/telemetry) and Automatic Tuning (automated remediation), causing candidates to pick Query Store when the question asks for automatic fixing.

How to eliminate wrong answers

Option A is wrong because Query Store captures query execution history and plan performance but does not automatically fix regressions — it is the data source that Automatic Tuning uses. Option C is wrong because Intelligent Insights is a diagnostics feature that detects performance issues and provides root-cause analysis, but it does not automatically correct plan regressions. Option D is wrong because Database Advisor provides recommendations (e.g., index, parameterization) but does not automatically force plans or fix regressions on its own.

49
MCQeasy

You are configuring alerts for an Azure SQL Database. You need to create an alert that fires when the database's DTU consumption exceeds 80% for a sustained period. Which Azure Monitor metric should you use?

A.Sessions count
B.DTU percentage
C.Storage percent
D.CPU percent
AnswerB

DTU percentage is the correct metric because it represents the percentage of DTU consumption relative to the database's DTU limit. This directly aligns with the requirement to alert when DTU consumption exceeds 80%, as it provides a normalized view of resource usage.

Why this answer

The DTU percentage metric provides the percentage of DTU consumption against the database's limit. Setting an alert on this metric with a threshold of 80% will notify when DTU usage exceeds that level, directly meeting the requirement. Other metrics like CPU or storage do not capture the full DTU picture.

Exam trap

The trap here is selecting a component metric like CPU percent instead of the composite DTU percentage metric.

50
MCQeasy

You are responsible for a set of Azure SQL Databases that are used by different departments in your organization. The databases are deployed in an elastic pool with Standard tier (eDTU 200). Usage patterns show that the marketing database uses high CPU during the day, while the sales database uses high IO at night. You want to optimize costs while ensuring each database gets the resources it needs. What should you do?

A.Configure minimum and maximum eDTU per database in the pool
B.Migrate the pool to a vCore-based elastic pool
C.Add more databases to the pool to spread the load
D.Move each database to a standalone DTU tier
AnswerA

Per-database minimum and maximum eDTU settings let the marketing database reserve CPU during the day while the sales database draws IO capacity at night, sharing the pool's 200 eDTUs. This matches each workload's peak without over-provisioning, satisfying the cost-optimisation constraint.

Why this answer

In an elastic pool, you can set per-database minimum and maximum eDTU limits to guarantee a floor of resources for each database while capping how much any single database can consume. This lets the marketing database get the CPU it needs during the day and the sales database get the IO it needs at night, without one starving the other, and it optimizes cost by keeping the shared pool model.

Exam trap

The trap is thinking that changing the tier or adding databases solves contention — the question's clue about complementary day/night usage points to per-database min/max eDTU configuration within the existing pool.

How to eliminate wrong answers

Option B is wrong because migrating to a vCore-based elastic pool changes the purchasing model (vCores vs eDTUs) but does not by itself solve the resource-contention problem — you would still need to configure per-database min/max, and it may increase cost. Option C is wrong because adding more databases to the pool increases contention for the same eDTU resources, making the problem worse, not better. Option D is wrong because moving each database to a standalone DTU tier eliminates the cost benefit of pooling and over-provisions each database for its peak, which is exactly what the question asks to avoid.

51
MCQhard

Your Azure SQL Database is configured with the Hyperscale service tier. You observe that log write latency is consistently high, affecting transaction throughput. What is the most likely cause and the recommended mitigation?

A.The log IOPS is limited by the disk performance; increase the provisioned IOPS.
B.The compute replica is undersized; scale up the compute to increase log throughput.
C.High log generation rate is causing log rate governance throttling; reduce the log generation rate by batching transactions.
D.The log write latency is due to network congestion; move the database to a different region.
AnswerC

Log rate governance throttles to protect secondary replicas; reducing log generation mitigates.

Why this answer

In Hyperscale, log rate is governed to protect secondary replicas; high latency indicates throttling. Option A is wrong because Hyperscale uses local SSD for log, not PIOPS. Option B is wrong because log rate governance affects all log writes.

Option D is wrong because scaling up compute doesn't increase log throughput limits.

52
MCQeasy

You need to configure a long-term retention policy for backups of an Azure SQL Database that must retain weekly full backups for 5 years and monthly full backups for 10 years. Which backup retention feature should you use?

A.Geo-restore feature
B.Long-Term Retention (LTR) policy
C.Automated backups retention period
D.Point-In-Time Restore (PITR) retention
AnswerB

LTR extends retention beyond the default point-in-time window, letting you keep weekly full backups for 5 years and monthly full backups for 10 years independently. Standard short-term retention cannot meet these multi-year durations, so LTR directly satisfies the stated 5-year and 10-year requirements.

Why this answer

Long-Term Retention (LTR) policies in Azure SQL Database are specifically designed to retain full backups for extended periods — up to 10 years — with configurable weekly, monthly, and yearly retention. To keep weekly full backups for 5 years and monthly full backups for 10 years, the consultant must configure an LTR policy with the appropriate weekly and monthly retention settings.

Exam trap

The trap is confusing short-term automated backup retention (up to 35 days) with long-term retention, causing candidates to select the automated backups option for multi-year compliance requirements.

How to eliminate wrong answers

Option A is wrong because geo-restore uses geo-replicated backups for disaster recovery, not for long-term retention compliance. Option C is wrong because the automated backups retention period (1–35 days) is for short-term point-in-time restore, not multi-year retention. Option D is wrong because PITR retention is limited to a maximum of 35 days and cannot satisfy 5- or 10-year requirements.

53
Multi-Selecteasy

You are monitoring an Azure SQL Database. You need to identify which built-in tools can provide real-time performance data without additional cost. Which THREE should you select?

Select 3 answers
A.Azure Monitor Metrics
B.Performance Insights
C.Query Store
D.Dynamic Management Views (DMVs)
E.SQL Server Profiler
AnswersA, C, D

Azure Monitor provides free metrics for Azure SQL Database.

Why this answer

Azure Monitor Metrics is a built-in, no-cost feature that collects and stores platform metrics from Azure SQL Database at near-real-time intervals (typically every minute). It provides performance counters such as DTU/CPU usage, data IO, and log write percentages without requiring additional configuration or licensing, making it a correct choice for real-time performance data.

Exam trap

The trap here is that candidates confuse Performance Insights (an AWS service) with Azure's Query Performance Insight, or assume SQL Server Profiler is a built-in, cost-free tool for Azure SQL Database when it is neither native nor free.

54
MCQhard

You are reviewing an ARM template for Azure SQL Database. The exhibit shows the database settings. You notice the database is not being automatically paused. What is the most likely explanation?

A.The minCapacity is set too low
B.The autoPauseDelay is set to 60 minutes
C.The licenseType is set to BasePrice
D.The database uses VBS enclaves which are incompatible with serverless
AnswerD

Serverless does not support VBS enclaves.

Why this answer

Auto-pause is only supported for General Purpose serverless databases, and the use of VBS enclave (preferredEnclaveType: "VBS") indicates Always Encrypted with secure enclaves, which is not supported with serverless. Option A is wrong because minCapacity 0.5 is valid for serverless. Option B is wrong because licenseType BasePrice does not affect auto-pause.

Option C is wrong because autoPauseDelay 60 minutes is valid; the default is 60.

55
MCQmedium

Your Azure SQL Managed Instance is experiencing high PAGELATCH_SH waits. You need to reduce this contention. What should you implement?

A.Scale up the managed instance to a higher service tier
B.Enable delayed durability
C.Configure a readable secondary replica
D.Add more data files to the filegroup
AnswerD

Adding data files spreads insert activity across multiple allocation bitmaps, relieving PAGELATCH_SH contention on last-page insert hotspots. This directly addresses the stem's high PAGELATCH_SH waits, which stem from concurrent inserts competing for the same page and allocation structures within a single file.

Why this answer

Adding more data files to the filegroup spreads out page allocations, reducing contention for allocation structures and thus decreasing PAGELATCH_SH waits. Option A is incorrect because scaling up may provide more resources but does not directly address the page latch contention caused by allocation bottlenecks. Option B is incorrect because delayed durability only affects transaction log write behavior, not page latches.

Option C is incorrect because a readable secondary replica does not alleviate latch contention on the primary; it is designed for read workload offloading, not contention reduction.

56
MCQeasy

You are monitoring an Azure SQL Database using Azure Monitor metrics. You need to create an alert that fires when the database's CPU usage exceeds 90% for 10 minutes. Which metric should you use?

A.dtu_consumption_percent
B.cpu_percent
C.physical_data_read_percent
D.log_write_percent
AnswerB

The cpu_percent metric in Azure Monitor for Azure SQL Database represents the percentage of CPU used by the database. It is the correct metric to monitor for CPU usage thresholds. Setting an alert on cpu_percent with a threshold of 90 and an aggregation window of 10 minutes will fire when the average CPU percentage exceeds 90% over that period, meeting the requirement.

Why this answer

Azure SQL Database exposes several Azure Monitor metrics, including cpu_percent, which directly measures CPU usage as a percentage. To alert when CPU exceeds 90% for 10 minutes, you create an alert rule on the cpu_percent metric with a threshold of 90 and an aggregation granularity of 10 minutes. Other metrics like dtu_consumption_percent or log_write_percent measure different resources and would not satisfy the specific CPU monitoring requirement.

Exam trap

The trap here is confusing DTU consumption with CPU usage; DTU combines multiple resources, so it can be high even when CPU is low, making it unsuitable for a CPU-specific alert.

57
MCQeasy

You need to monitor the performance of an Azure SQL Database and set up alerts when the DTU consumption exceeds 80% for more than 5 minutes. Which Azure service should you use?

A.Azure Monitor metric alerts
B.Azure Advisor
C.Azure SQL Insights (preview)
D.Log Analytics workspace
AnswerA

Azure Monitor metric alerts evaluate platform metrics such as DTU consumption against thresholds on a defined evaluation frequency and aggregation window, satisfying the requirement to fire when DTU exceeds 80% sustained for more than 5 minutes. Azure SQL Database emits DTU percentage automatically, so no instrumentation is needed.

Why this answer

Azure Monitor metric alerts can be configured on DTU percentage. Option B is wrong because Azure Advisor provides recommendations but not real-time alerts. Option C is wrong because Azure SQL Insights is for visualization, not alerting.

Option D is wrong because Log Analytics workspaces store logs but do not natively provide metric alerts.

58
MCQmedium

You are monitoring an Azure SQL Database using Intelligent Insights. You receive an alert indicating 'Degradation in performance due to increased log write wait time'. What is the most likely cause of this issue?

A.High CPU utilization on the database server
B.Long-running blocking transactions
C.The log rate limit has been reached due to high transaction throughput
D.Insufficient storage space for data files
AnswerC

High transaction throughput saturates the transaction log write rate, hitting the Azure SQL Database log rate limit and producing increased log write wait time. Intelligent Insights attributes this specific wait category to log throughput throttling, not to CPU, memory, or storage IOPS pressure elsewhere.

Why this answer

High log write wait times typically indicate that the transaction log throughput is a bottleneck, often due to the log rate limit. Option A is wrong because high CPU utilization would cause other wait types like SOS_SCHEDULER_YIELD, not WRITELOG. Option B is wrong because long-running blocking transactions cause wait types like LCK_M_*, not increased log write wait time.

Option D is wrong because insufficient storage space for data files causes different symptoms, such as write errors or data file growth issues, but not specifically log write wait.

59
Multi-Selectmedium

You are monitoring an Azure SQL Database that uses the vCore purchasing model. You need to set up alerts to notify you when the database approaches its resource limits. Which two metrics should you alert on to detect CPU and I/O pressure? (Choose two.)

Select 2 answers
A.log_write_percent
B.physical_data_read_percent
C.cpu_percent
D.sessions_percent
E.workers_percent
AnswersB, C

physical_data_read_percent measures the percentage of physical data reads relative to the limit. High values indicate I/O pressure, which can slow query performance. Alerting on this metric helps identify when the database is I/O bound. In the vCore model, this metric is relevant for detecting storage throughput issues. Setting an alert allows you to investigate and potentially optimize queries or scale up.

Why this answer

The correct metrics are cpu_percent and physical_data_read_percent. cpu_percent directly measures CPU utilization, and physical_data_read_percent measures the percentage of physical data reads, indicating I/O pressure. These are core metrics in the vCore model for monitoring resource consumption. Other metrics like log_write_percent, sessions_percent, and workers_percent are less directly related to the overall CPU and I/O pressure.

Exam trap

The trap here is confusing log_write_percent with overall I/O pressure, when it only measures log write throughput, not data reads.

60
MCQhard

You run the query in the exhibit on an Azure SQL Database. The result shows high wait_time_ms for PAGEIOLATCH_SH waits. What does this indicate?

A.I/O subsystem bottleneck for read operations
B.CPU bottleneck
C.Blocking between concurrent transactions
D.Memory pressure
AnswerA

PAGEIOLATCH_SH waits occur when a thread waits for a data page to be read from storage into the buffer pool, so sustained high wait_time_ms points to slow read I/O rather than CPU, locking or memory pressure. This satisfies the stem's read-operation bottleneck constraint.

Why this answer

PAGEIOLATCH_SH waits indicate that a query is waiting for a data page to be read from disk into the buffer pool, which is an I/O operation. High wait_time_ms for this wait type typically points to an I/O subsystem bottleneck for read operations, making option A correct. Option B (CPU bottleneck) is incorrect because PAGEIOLATCH_SH is related to I/O, not CPU.

Option C (blocking) is incorrect because blocking is associated with LOCK waits, not PAGEIOLATCH_SH. Option D (memory pressure) is incorrect; while memory pressure can increase physical I/O, the wait type itself specifically indicates I/O latency for reading pages from disk.

61
MCQhard

You are managing an Azure SQL Database that uses Intelligent Insights. You receive an alert that there is a performance issue with a specific query. You need to analyze the root cause. What should you use?

A.Intelligent Insights report
B.Automatic Tuning recommendations
C.Azure Monitor metrics for the database
D.Query Store to review query execution plans and wait statistics
AnswerD

Query Store persists execution plans, runtime statistics and wait categories per query, letting you identify the regressed plan and the dominant wait type causing the slowdown. It provides the historical plan comparison that Intelligent Insights alerts alone do not expose.

Why this answer

Query Store is the correct tool because it captures historical execution plans, runtime statistics, and wait statistics for individual queries, allowing you to pinpoint the root cause of a performance regression. Intelligent Insights provides high-level diagnostics but not the granular per-query plan and wait data needed for deep analysis of a specific query issue.

Exam trap

The trap here is that candidates confuse Intelligent Insights' automated diagnostics with the granular, query-level historical data that Query Store provides, assuming the alert's source (Intelligent Insights) is also the tool for deep manual investigation.

How to eliminate wrong answers

Option A is wrong because Intelligent Insights provides automated root cause analysis and recommendations at the database level, but it does not expose detailed per-query execution plans or wait statistics for manual investigation. Option B is wrong because Automatic Tuning focuses on automatically applying index and plan regression fixes, not on providing a historical record of query execution plans and waits for root cause analysis. Option C is wrong because Azure Monitor metrics (e.g., DTU/CPU usage, IOPS) show aggregate resource consumption, not per-query execution plans or wait statistics, so they cannot isolate the specific query's performance issue.

62
Multi-Selecthard

Which THREE metrics should you monitor to proactively detect potential performance issues in an Azure SQL Database?

Select 3 answers
A.Log IO percentage (sys.dm_db_resource_stats)
B.Log backup frequency
C.Database size and growth rate
D.Wait statistics (sys.dm_os_wait_stats)
E.Query Store for query performance regressions
AnswersA, D, E

Log IO percentage from sys.dm_db_resource_stats exposes the ratio of log write throughput to provisioned log IOPS, revealing transaction-log write saturation before commit latency degrades. This directly satisfies the stem's proactive detection requirement, since sustained high log IO percentage signals the log subsystem is throttling writes and performance issues are imminent.

Why this answer

Option A (Log IO percentage via sys.dm_db_resource_stats) is correct because this DMV reports resource utilization such as log write percentage against the service-tier limits, so sustained high log IO percentage signals throttling and impending performance degradation. Option D (Wait statistics via sys.dm_os_wait_stats) is correct because aggregating wait types reveals where sessions are blocked or stalled (for example PAGEIOLATCH, CXPACKET, or WRITELOG), which is the standard method for diagnosing the root cause of slow performance. Option E (Query Store for query performance regressions) is correct because Query Store persists query plans, runtime statistics, and execution history, letting you proactively detect plan regressions and parameter-sniffing issues before users report them.

Option B (Log backup frequency) is not a performance metric for Azure SQL Database, since log backups are managed automatically by the platform and their frequency is not exposed as a tunable performance indicator. Option C (Database size and growth rate) is a capacity-planning metric rather than a real-time performance signal, so it does not proactively reveal latency, blocking, or resource-throttling issues.

Exam trap

DP-300 often tests the difference between performance-monitoring DMVs and operational/capacity metrics — candidates pick database size or backup frequency because they sound like 'monitoring,' but only the three DMV/Query Store options expose runtime performance signals.

63
MCQeasy

Refer to the exhibit. You executed the Azure CLI command to list databases. You need to resume db3 to make it available for connections. Which command should you use?

A.az sql db restart --resource-group rg1 --server server1 --name db3
B.az sql db resume --resource-group rg1 --server server1 --name db3
C.az sql db start --resource-group rg1 --server server1 --name db3
D.az sql db update --resource-group rg1 --server server1 --name db3 --set status=Online
AnswerB

db3 is a paused Azure SQL database, so resuming it requires the dedicated resume subcommand with the resource group, server and database names. The command az sql db resume --resource-group rg1 --server server1 --name db3 supplies exactly those parameters, restoring db3 to an available state.

Why this answer

`az sql db resume` is the command to resume a paused database. Option A is wrong because `az sql db restart` restarts an online database but does not resume a paused one. Option C is wrong because `az sql db start` is not a valid command for Azure SQL Database.

Option D is wrong because `az sql db update` can modify properties but cannot resume a paused database; resuming requires a dedicated command.

64
Multi-Selecthard

You are monitoring an Azure SQL Database that uses the vCore purchasing model. You need to identify the top resource-consuming queries. You decide to use Query Store. Which two actions should you perform? (Choose two.)

Select 2 answers
A.Configure the MAX_STORAGE_SIZE_MB option for Query Store.
B.Enable the LEGACY_CARDINALITY_ESTIMATION database scoped configuration.
C.Create a custom Extended Events session to capture query metrics.
D.Enable Query Store on the database.
E.Use the Top Resource Consuming Queries report in the Azure portal or SQL Server Management Studio.
AnswersD, E

Query Store must be enabled to capture query execution statistics. By default, it may be off or in read-only mode. Enabling it ensures that query plans and runtime statistics are collected, which is necessary to identify top resource-consuming queries. This is a prerequisite for using Query Store for performance analysis.

Why this answer

To use Query Store for identifying top resource-consuming queries, you must first enable Query Store on the database. Then, you can use the built-in Top Resource Consuming Queries report, which aggregates query statistics and ranks them by resource usage. The other options are either not required or not the intended use of Query Store for this purpose.

Exam trap

The trap here is assuming that additional configuration like MAX_STORAGE_SIZE_MB or Extended Events is necessary, when simply enabling Query Store and using its reports is sufficient.

65
MCQeasy

You are managing an Azure SQL Database that has automatic tuning enabled. You notice that a recent index creation recommended by automatic tuning has caused a performance regression for some queries. You need to revert the change and prevent automatic tuning from applying similar recommendations in the future. What should you do?

A.Disable automatic tuning on the database.
B.Use the automatic tuning option to revert the last change and then disable the CREATE INDEX tuning option.
C.Manually drop the index and create a database-level DDL trigger to block index creation.
D.Set the automatic tuning option to inherit from the server and disable it at the server level.
AnswerB

Automatic tuning provides a history of applied recommendations and allows you to revert a specific change. After reverting the index creation, you can disable the CREATE INDEX tuning option to prevent automatic tuning from creating indexes in the future. This targeted approach addresses both the immediate issue and the future prevention without disabling other tuning features.

Why this answer

Automatic tuning in Azure SQL Database allows you to revert individual tuning actions. To address the regression, you should revert the index creation and then disable the CREATE INDEX tuning option to prevent future automatic index creation. Disabling all automatic tuning or using manual workarounds like DDL triggers are less precise and can have unintended side effects.

Exam trap

The trap here is thinking that disabling automatic tuning entirely is necessary, when you can revert the specific change and disable only the index creation option.

66
MCQhard

You are administering an Azure SQL Managed Instance that hosts a busy OLTP database. Users report that during peak hours, queries that typically run in milliseconds now take seconds. You suspect that the issue is related to tempdb contention. Which action should you take to resolve the tempdb contention?

A.Move tempdb to a faster storage tier.
B.Set the database compatibility level to the latest version.
C.Increase the number of tempdb data files.
D.Enable Read Committed Snapshot Isolation (RCSI).
AnswerC

Tempdb contention often arises from allocation bottlenecks when many concurrent connections create and drop temporary objects. Adding more tempdb data files distributes the allocation load across multiple files, reducing contention on allocation pages. This is the recommended approach for resolving tempdb contention in Azure SQL Managed Instance.

Why this answer

Tempdb contention in Azure SQL Managed Instance is commonly caused by allocation bottlenecks when many sessions create temporary objects. Adding more tempdb data files spreads the allocation metadata across multiple files, reducing contention. Other actions like moving to faster storage or changing isolation levels do not address the root cause of allocation contention.

Exam trap

The trap here is assuming that tempdb contention is solely an I/O problem and moving to faster storage will fix it, when the real issue is often allocation contention that requires adding files.

67
Multi-Selectmedium

You are troubleshooting a performance issue on an Azure SQL Database. Which TWO actions should you prioritize to identify the root cause of high resource consumption?

Select 2 answers
A.Rebuild all indexes to improve query performance.
B.Change the database recovery model to Simple.
C.Scale the database to a higher service tier to mitigate the issue.
D.Review the Query Store Top Resource Consuming Queries report.
E.Query sys.dm_exec_query_stats to find queries with high total_worker_time.
AnswersD, E

Query Store captures per-query runtime statistics, including CPU, duration, and logical reads, persisted across plan changes. The Top Resource Consuming Queries report ranks statements by total consumption, directly isolating which queries drive the high resource usage reported in the stem, rather than merely confirming that consumption is elevated.

Why this answer

To identify the root cause of high resource consumption, you should use diagnostic tools that analyze query performance. The Query Store's Top Resource Consuming Queries report (D) provides historical insight into which queries consumed the most resources. Additionally, querying sys.dm_exec_query_stats (E) allows you to find queries with high total_worker_time, indicating CPU-intensive queries.

Options A (rebuilding indexes) and B (changing recovery model) are corrective actions, not diagnostic. Option C (scaling to a higher service tier) is a reactive mitigation that does not identify the root cause. Therefore, options D and E are the correct prioritized actions.

68
MCQeasy

You are managing an Azure SQL Database that has Automatic Tuning enabled. You receive an alert that a query plan regression was detected and a plan correction was automatically applied. You want to verify the performance improvement. What should you use?

A.Use sys.dm_exec_query_stats to view current performance.
B.Review the Azure Monitor alert details.
C.Query the Query Store to compare query performance before and after the plan change.
D.Check the automatic tuning log in the Azure portal.
AnswerC

Query Store persists historical execution plans and runtime statistics, letting you compare a query's performance before and after the automatic plan correction. This directly satisfies the requirement to verify improvement, since the regression and forced plan are both recorded with their respective metrics.

Why this answer

Query Store is the built-in feature that captures query plan history and runtime statistics over time, so it can directly compare a query's performance before and after an automatic plan correction was applied. Automatic tuning relies on Query Store as its data source, and the 'Automatic Tuning' recommendation history is also surfaced through Query Store views such as sys.query_store_plan and sys.query_store_runtime_stats. This makes Query Store the authoritative place to verify the improvement.

Exam trap

DP-300 often tests the misconception that Azure Monitor or the tuning log provides the detailed before/after performance evidence, when in fact Query Store is the only feature that retains historical plan and runtime data.

How to eliminate wrong answers

Option A is wrong because sys.dm_exec_query_stats only shows aggregated statistics for currently cached plans and does not retain historical plan data, so it cannot compare before/after a plan regression. Option B is wrong because Azure Monitor alerts only notify that a regression was detected and a correction applied; they do not contain the detailed before/after query performance metrics. Option D is wrong because the automatic tuning log in the portal shows tuning actions taken, not the comparative query performance evidence needed to verify improvement.

69
MCQeasy

You need to recommend a performance monitoring solution for a new Azure SQL Managed Instance deployment. The solution must provide historical query performance data and the ability to compare performance before and after index changes. What should you include in the recommendation?

A.Query Store with custom retention settings
B.SQL Server DMVs
C.Azure SQL Analytics solution in Log Analytics
D.Azure SQL Database Intelligent Insights
AnswerA

Query Store persists query, plan and runtime statistics in the database itself, giving historical performance data and plan comparison across index changes. Custom retention settings keep that history long enough to compare before-and-after behaviour on the Managed Instance.

Why this answer

Query Store is the only feature that persists query execution plans and runtime statistics in the database, enabling historical performance analysis and before/after comparisons for index changes. It captures query text, plans, and runtime metrics over time, which is exactly what is needed to compare performance before and after index modifications. Custom retention settings allow you to control how long the data is kept, ensuring you have the necessary history.

Exam trap

DP-300 often tests the misconception that DMVs provide historical data, but they are transient and reset on restart; Query Store is the only feature designed for historical query performance analysis.

How to eliminate wrong answers

Option B is wrong because DMVs provide only current, in-memory performance data and are reset when the instance restarts, so they cannot provide historical data for before/after comparisons. Option C is wrong because Azure SQL Analytics (a Log Analytics solution) is deprecated and does not capture detailed query-level performance data or execution plans needed for index change analysis. Option D is wrong because Intelligent Insights is an automatic diagnostic service that detects performance issues but does not provide the granular historical query performance data or the ability to compare before/after index changes.

70
MCQeasy

You are responsible for an Azure SQL Managed Instance that hosts a critical database. You need to configure alerts to notify the operations team when the average CPU usage of the instance exceeds 80% for 10 minutes. You want to use the built-in monitoring capabilities of Azure. What should you create?

A.A SQL Server Agent job that queries sys.dm_os_performance_counters and sends an email.
B.A Log Analytics workspace query with a scheduled alert.
C.An Azure Automation runbook that runs a T-SQL query and sends a notification.
D.An Azure Monitor alert rule based on the CPU percentage metric.
AnswerD

Azure Monitor provides platform metrics for Azure SQL Managed Instance, including CPU percentage. You can create an alert rule that evaluates the average CPU percentage over a 10-minute window and triggers when it exceeds 80%. This is the native, straightforward method to achieve the requirement without additional configuration.

Why this answer

Azure Monitor metric alerts are the built-in mechanism for alerting on platform metrics like CPU percentage. You can specify the aggregation (average), the threshold (80%), and the evaluation period (10 minutes). This meets the requirement efficiently.

The other options involve custom scripting or log-based approaches that are not necessary for a simple metric threshold alert.

Exam trap

The trap here is overcomplicating the solution by using SQL Server Agent or Automation, when Azure Monitor natively supports metric alerts for Managed Instance.

71
MCQhard

You are configuring automatic tuning for an Azure SQL Database. The database has a heavy OLTP workload. You want to automatically correct query plan choice regressions without manual intervention. Which automatic tuning option should you enable?

A.DROP_INDEX
B.CREATE_INDEX
C.CORRECT_INDEX
D.FORCE_LAST_GOOD_PLAN
AnswerD

FORCE_LAST_GOOD_PLAN detects plan-choice regressions by comparing a query's performance against its previous good plan, then forces the earlier plan automatically. This satisfies the OLTP requirement to correct regressions without manual intervention, unlike CREATE INDEX or DROP INDEX tuning options.

Why this answer

FORCE_LAST_GOOD_PLAN, is the correct automatic tuning option for Azure SQL Database to automatically correct query plan choice regressions. When the database engine detects that a newly compiled query plan performs worse than the previously known good plan, it can automatically force the last known good plan without manual intervention, which is ideal for a heavy OLTP workload where performance stability is critical.

Exam trap

The trap here is that candidates often confuse index tuning options (CREATE_INDEX, DROP_INDEX) with query plan regression correction, mistakenly thinking that creating or dropping indexes will fix a plan choice regression, when in fact FORCE_LAST_GOOD_PLAN is the specific feature designed for that purpose.

How to eliminate wrong answers

Option A is wrong because DROP_INDEX is an automatic tuning option that identifies and drops unused or duplicate indexes to improve write performance and reduce storage, but it does not address query plan regressions. Option B is wrong because CREATE_INDEX automatically creates missing indexes that improve query performance based on the workload, but it does not correct query plan choice regressions. Option C is wrong because CORRECT_INDEX is not a valid automatic tuning option in Azure SQL Database; the valid index-related options are CREATE_INDEX and DROP_INDEX only.

72
MCQmedium

You are reviewing the long-term retention (LTR) policy for an Azure SQL Database. The exhibit shows the current policy. You need to ensure that backups are retained for at least 10 years for compliance. What should you do?

A.Increase the yearly retention to P10Y.
B.Change the weekOfYear to 10.
C.Increase the monthly retention to P120M.
D.Increase the weekly retention to P10W.
AnswerA

The yearly retention period governs how long yearly full backups persist; setting it to P10Y retains them for ten years, satisfying the compliance requirement. Weekly, monthly, and daily retention values do not extend coverage to a decade.

Why this answer

The long-term retention (LTR) policy in Azure SQL Database uses ISO 8601 duration formats for each retention tier: weekly (P#W), monthly (P#M), and yearly (P#Y). To retain backups for at least 10 years, the yearly retention period must be set to P10Y, which represents 10 years. Only the yearly retention option supports multi-year durations, making it the correct choice for a 10-year compliance requirement.

Exam trap

DP-300 often tests the distinction between retention duration parameters (P10Y, P120M, P10W) and configuration parameters like weekOfYear, causing candidates to confuse the backup selection week with the retention period itself.

How to eliminate wrong answers

Option B is wrong because weekOfYear specifies which week of the year is used as the yearly backup (a value from 1 to 52), not the retention duration. Option C is wrong because P120M represents 120 months, but the monthly retention field only accepts durations up to P120M in theory — however, the monthly LTR tier is designed for shorter retention (up to 120 months) and is not the intended mechanism for a 10-year compliance policy; the yearly tier is the correct one for multi-year retention. Option D is wrong because P10W represents only 10 weeks, far short of 10 years, and the weekly tier is capped at a much shorter maximum retention.

73
MCQeasy

You have an Azure SQL Database that is experiencing performance issues. You suspect that a recent deployment introduced a regression in a stored procedure. You need to identify the query plan change and the specific query that is performing poorly. What should you use?

A.Azure Monitor metrics
B.Query Store
C.SQL Server Profiler
D.Dynamic management views (DMVs)
AnswerB

Query Store captures query plans, runtime statistics, and history, allowing you to identify plan changes and performance regressions over time. You can pinpoint the stored procedure and see when its plan changed and how performance degraded. This is the ideal tool for diagnosing regressions because it retains historical data and provides built-in reporting for plan changes and top resource consumers.

Why this answer

Query Store is the correct tool because it retains historical query plans and runtime statistics, enabling you to detect plan changes and performance regressions. It can show when a stored procedure's plan changed and how its performance degraded. Other tools either lack historical data (DMVs), are unavailable (Profiler), or lack query-level detail (Azure Monitor metrics).

Exam trap

The trap here is assuming that real-time tools like DMVs or Profiler can show historical plan changes, when only Query Store provides that capability.

74
MCQeasy

A company has an Azure SQL Database that is experiencing performance degradation during peak hours. The database is configured with the Standard tier (S2). Which action should you recommend to improve performance without changing the application code?

A.Scale up the database to a higher service objective (e.g., S3).
B.Enable Query Store and run the Performance Dashboard.
C.Enable read scale-out to offload read queries.
D.Create nonclustered indexes on all tables.
AnswerA

Scaling up to S3 increases the allocated DTUs and associated compute, memory, and IO resources for the same database, relieving peak-hour contention without application changes. Vertical scaling within the Standard tier is the direct remedy when the current service objective is the bottleneck.

Why this answer

Scaling up the Azure SQL Database from S2 to a higher service objective (e.g., S3) increases the allocated DTUs/vCores, memory, and IOPS, directly addressing resource saturation during peak hours without requiring any application changes. This is the fastest, least invasive remediation when the workload is CPU/IO bound and the tier is the bottleneck. It preserves connection strings, schema, and code, making it the correct first recommendation.

Exam trap

DP-300 often tests the difference between diagnosing a problem (Query Store, Performance Dashboard) and fixing it (scaling, indexing), so candidates who pick the diagnostic tool over the actual remediation lose the point.

How to eliminate wrong answers

Option B is wrong because enabling Query Store and running the Performance Dashboard are diagnostic activities that identify problematic queries — they do not by themselves improve performance. Option C is wrong because read scale-out is only available on the Premium/Business Critical tiers, not Standard S2, and it only offloads read-only workloads, which does not help if the bottleneck is writes or CPU. Option D is wrong because blindly creating nonclustered indexes on all tables is a dangerous anti-pattern that increases write overhead and storage, and it is not a targeted fix for a resource-constrained tier.

75
MCQmedium

You are a DBA for a company that uses Azure SQL Database for its customer relationship management (CRM) system. The database is currently in the Standard tier (DTU S2) and is experiencing performance degradation during end-of-month reporting. Reports that aggregate large amounts of data take over 30 minutes to run. You notice that the database's DTU usage averages 80% during these reports, with high IO. You need to improve report performance without significantly increasing cost. The reports are read-only and can tolerate some staleness. What should you do?

A.Increase the service tier to S3 during the end-of-month period
B.Add nonclustered indexes to the tables used in reports
C.Convert the tables to clustered columnstore indexes
D.Create a read-only replica and direct reports to it
AnswerA

Increasing to S3 during reporting period provides more resources, improving performance without a permanent cost increase. This is the most feasible option given the tier limitation.

Why this answer

Increasing the service tier to S3 during the end-of-month period provides more DTUs and IO resources, which directly addresses the performance degradation without a permanent cost increase. The cost is only incurred during the reporting period, making it a cost-effective short-term solution. Option D is incorrect because read-only replicas are not supported in the Standard (DTU) S2 tier; they are only available in Premium, Business Critical, and Hyperscale tiers.

Therefore, this option is not feasible. Options B and C may help but are not as effective or risk affecting write performance.

Exam trap

The trap is assuming read-only replicas are available in all Azure SQL Database tiers. They are only supported in Premium, Business Critical, and Hyperscale tiers, not in Standard (DTU) tiers.

Page 1 of 3 · 158 questions totalNext →

Ready to test yourself?

Try a timed practice session using only Monitor Optimize Db questions.