What is a characteristic of Snowflake's transaction locking and concurrency modeling?
According to the Snowflake documentation1, Snowflake uses a multi-version concurrency control (MVCC) model, which means that each transaction operates on a consistent snapshot of the database at a point in time. This allows queries and DML statements to run concurrently without blocking each other, as they do not modify the same data. Therefore, a deadlock, which occurs when concurrent transactions are waiting on resources that are locked by each other, cannot happen in Snowflake. Option B is incorrect because queries and DML statements do not block each other in Snowflake, unless they are explicitly started transactions and multiple statements in each transaction2. Option C is incorrect because transaction locking in Snowflake is enforced at the partition level, not the row or table level3. Option D is incorrect because queries executed within a given transaction do not see that transaction's uncommitted changes, but only the committed changes that occurred before the transaction started1.
Jennie
11 days agoChauncey
15 days agoMatt
15 days agoAlita
8 days agoAndree
16 days agoChauncey
17 days agoAmber
28 days agoRonald
10 days agoStephaine
21 days agoEmilio
1 months agoOren
19 days agoHermila
22 days ago