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
1 months agoKimberlie
9 days agoElinore
15 days agoCarline
16 days agoChauncey
1 months agoMatt
1 months agoDelbert
9 days agoLynelle
10 days agoTimothy
26 days agoAlita
1 months agoAndree
1 months agoChauncey
2 months agoAmber
2 months agoLisha
21 days agoKasandra
23 days agoRonald
1 months agoStephaine
2 months agoEmilio
2 months agoOren
2 months agoHermila
2 months ago