Buscar

teste conhecimento

Prévia do material em texto

1. Assinale a alternativa INCORRETA sobre os modos de bloqueio no SQL 
Server. 
a) Quando uma transação faz um UPDATE em um conjunto de linhas de uma 
tabela, somente as chaves correspondentes às linhas atualizadas são 
bloqueadas com modo U e, tanto a tabela quanto as páginas de dados que 
contêm as linhas atualizadas, ganham bloqueio IU. 
b) Quando uma transação faz um DELETE em um conjunto de linhas de uma 
tabela, as chaves correspondentes às linhas atualizadas são bloqueadas com 
modo X e tanto a tabela quanto as páginas de dados que contêm as linhas 
atualizadas ganham bloqueio IX. 
c) Quando uma transação faz um SELECT em um conjunto de linhas de uma 
tabela, as chaves correspondentes às linhas lidas são bloqueadas com modo 
S, impedindo que outras atualizações coloquem um bloqueio X para atualizá-
las. 
d) Quando uma transação faz um ALTER TABLE em uma tabela, toda a tabela 
é bloqueada em modo Sch-M, impedindo inclusive que SELECTs sejam 
executados para recuperar dados da tabela. 
 
Gabarito 
A resposta correta é a letra A. 
Quando uma transação faz um UPDATE em um conjunto de linhas de uma 
tabela, as chaves correspondentes às linhas que serão atualizadas são bloqueadas 
com modo U até que sejam recuperadas. Depois, ganham bloqueio X para serem 
efetivamente atualizadas 
2. Relacione as colunas a seguir sobre as principais anomalias decorrentes da 
execução simultânea de transações no SQL Server. 
Leitura fantasma1 
 
Atualização perdida 2 
 
Leitura não repetível3 
 
Leitura suja4 
a) Nova linha inserida entre duas leituras 
1234 
b) Leitura de um dado revertido 
1234 
c) Leitura de dados diferentes nas mesmas linhas 
1234 
d) Dado substituído por outra transação 
1234 
 
Gabarito 
Gabarito 
De cima para baixo: A, D, C e B. 
Quando uma nova linha é inserida entre duas leituras, temos uma leitura 
fantasma. Quando uma transação lê um dado e ele é posteriormente revertido, 
temos uma leitura suja. Quando duas leituras seguidas dentro de uma transação 
leem dados diferentes, temos uma leitura não repetível. E, quando um dado 
atualizado em uma transação é atualizado por outra transação concorrente, temos 
uma atualização perdida. 
3. Um dos usuários informa que a consulta que ele submeteu está demorando 
muito. Qual das ferramentas a seguir pode dar rapidamente a você uma pista 
sobre o que está acontecendo com a consulta do usuário? 
a) Activity Monitor 
b) Waiting Tasks 
c) Performance Monitor 
d) Blocking Tree 
 
A resposta correta é a letra B. 
Note que há um problema de desempenho localizado em uma consulta de 
usuário. Entre as ferramentas listadas, aquela que pode lhe dar uma dica é a 
Waiting Tasks. A consulta do usuário pode estar em espera por algum recurso 
e a view sys.dm_os_waiting_tasks mostrará rapidamente a você o porquê.

Continue navegando

Outros materiais