ExamGecko
Question list
Search
Search

List of questions

Search

Related questions











Question 20 - DP-300 discussion

Report
Export

You deploy a database to an Azure SQL Database managed instance.

You need to prevent read queries from blocking queries that are trying to write to the database.

Which database option should set?

A.
PARAMETERIZATION to FORCED
Answers
A.
PARAMETERIZATION to FORCED
B.
PARAMETERIZATION to SIMPLE
Answers
B.
PARAMETERIZATION to SIMPLE
C.
Delayed Durability to Forced
Answers
C.
Delayed Durability to Forced
D.
READ_COMMITTED_SNAPSHOT to ON
Answers
D.
READ_COMMITTED_SNAPSHOT to ON
Suggested answer: D

Explanation:

In SQL Server, you can also minimize locking contention while protecting transactions from dirty reads of uncommitted data modifications using either:

The READ COMMITTED isolation level with the READ_COMMITTED_SNAPSHOT database option set to ON.

The SNAPSHOT isolation level.

If READ_COMMITTED_SNAPSHOT is set to ON (the default on SQL Azure Database), the Database Engine uses row versioning to present each statement with a transactionally consistent snapshot of the data as it existed at the start of the statement. Locks are not used to protect the data from updates by other transactions.

Incorrect Answers:

A: When the PARAMETERIZATION database option is set to SIMPLE, the SQL Server query optimizer may choose to parameterize the queries. This means that any literal values that are contained in a query are substituted with parameters. This process is referred to as simple parameterization. When SIMPLE parameterization is in effect, you cannot control which queries are parameterized and which queries are not.

B: You can specify that all queries in a database be parameterized by setting the PARAMETERIZATION database option to FORCED. This process is referred to as forced parameterization.

C: Delayed transaction durability is accomplished using asynchronous log writes to disk. Transaction log records are kept in a buffer and written to disk when the buffer fills or a buffer flushing event takes place. Delayed transaction durability reduces both latency and contention within the system.

Some of the cases in which you could benefit from using delayed transaction durability are:

You can tolerate some data loss.

You are experiencing a bottleneck on transaction log writes.

Your workloads have a high contention rate.

Reference:

https://docs.microsoft.com/en-us/sql/t-sql/statements/set-transaction-isolation-level-transact-sql

asked 02/10/2024
Sergio da Costa
35 questions
User
Your answer:
0 comments
Sorted by

Leave a comment first