

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Um Analista de Sistemas analisa um relatório de contenção em um sistema de gestão de ordens de serviço com alto volume de transações simultâneas. O relatório indica que diversas transações de leitura (SELECT) estão sendo bloqueadas por transações de escrita (UPDATE) em andamento sobre a tabela de Ordens. Ao investigar o comportamento no SGBD, o DBA precisa compreender a compatibilidade entre os tipos de bloqueio envolvidos. Com base nos mecanismos de controle de concorrência e nos tipos de bloqueio em bancos de dados relacionais, assinale a alternativa CORRETA.
O bloqueio compartilhado (shared lock) é incompatível com outros bloqueios compartilhados, causando o bloqueio em leituras concorrentes.
O bloqueio exclusivo (exclusive lock), adquirido por operações de escrita como UPDATE, é incompatível com bloqueios compartilhados, impedindo que novas leituras sejam iniciadas sobre o recurso enquanto a operação de escrita estiver em andamento.
A escalada de bloqueio ocorre quando o SGBD converte bloqueios de tabela em bloqueios de linha para aumentar a granularidade.
O bloqueio de atualização (update lock) é adquirido por operações SELECT para proteger os dados e impedir outros acessos.
Os bloqueios de intenção são utilizados exclusivamente em bancos de dados distribuídos e não integram a arquitetura de controle de concorrência de SGBDs relacionais tradicionais como SQL Server ou PostgreSQL.
Os sistemas gerenciadores de bancos de dados relacionais podem implementar diversos tipos de bloqueio como controle de concorrência. Considere que X é um item de banco de dados, com relação aos tipos de bloqueio, analise as alternativas a seguir.
I. Os bloqueios do tipo binário podem ter dois estados: bloqueado (valor 1) ou desbloqueado (valor 0). Se o valor do bloqueio de X for 1, o item não pode ser acessado por outra operação de banco de dados que necessita daquele item. Se o valor do bloqueio for 0, o item pode ser acessado quando requisitado e o valor do bloqueio é alterado para 1.
II. Nos bloqueios do tipo leitura/gravação existem três operações de bloqueio: read_lock(X), write_lock(X) e unlock(X). Logo, um bloqueio associado ao item X pode ter três estados possíveis bloqueado para leitura, bloqueado para gravação ou desbloqueado.
III. Nos bloqueios do tipo alta vazão existem três modos de bloqueio: leitura, gravação e otimização. Logo, o estado lock(X) para o item X pode ser bloqueado para leitura, bloqueado para gravação, bloqueado para otimização ou desbloqueado.
Está correto o que se afirma em
II e III, apenas.
I e II, apenas.
II, apenas.
I, apenas.
I, II e III.
Em um controle leitores-escritores que busca evitar inanição de escritores e preservar boa vazão de leitura, qual estratégia é mais adequada?
Permitir chegada irrestrita de leitores enquanto existir fluxo de leitura, liberando escritores apenas quando não houver mais leitores ativos ou novos leitores chegando.
Liberar escritores e leitores alternadamente por ordem de chegada, restringindo o tamanho dos lotes a uma operação por vez.
Dar prioridade a escritores quando houver escritor aguardando, bloqueando novas leituras até a escrita pendente concluir.
Despertar todos os escritores e todos os leitores simultaneamente, deixando a escolha ao escalonador a cada desbloqueio.
Algumas das principais técnicas usadas para controlar a execução concorrente de transações são baseadas no conceito de bloqueio de itens de dados. Estes são os tipos de bloqueios segundo Elmasri e Navathe (2011):
I. Bloqueio gradual;
Il. Bloqueio conservador/exclusivo;
III. Bloqueio de interação.
Está CORRETO o que se afirma em:
Todas as afirmativas.
l e Il, apenas.
Il e Ill, apenas.
l e Ill, apenas.
Nenhuma das afirmativas.
Marque a alternativa que contém corretamente a técnica de controle de concorrência permite que múltiplas transações leiam os mesmos dados ao mesmo tempo, mas impede que uma transação escreva em dados que outra transação está lendo:
Bloqueio compartilhado (shared locking).
Bloqueio exclusivo (exclusive locking).
Controle de versão de múltiplas versões (MVCC).
Protocolo de controle de deadlock.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
Em relação aos estados de um processo em execução, o estado bloqueado ocorre quando o administrador do sistema operacional determina que o processo espere a conclusão de um processo prioritário.
Certo
Errado
No desenvolvimento de softwares, especialmente na implementação de sistemas de banco de dados, o controle de concorrência é fundamental para garantir a integridade dos dados em ambientes multiusuários. Qual das seguintes afirmativas sobre controle de concorrência em sistemas de banco de dados é certa?
O isolamento de transações garante que uma transação nunca verá os dados intermediários de outra transação.
O bloqueio pessimista permite que múltiplas transações acessem os mesmos dados simultaneamente sem qualquer tipo de bloqueio.
O controle de versão de múltiplas versões (MVCC) é uma técnica de controle de concorrência que evita bloqueios ao criar múltiplas versões dos dados.
Uma condição de corrida ocorre quando as transações são executadas em série, uma após a outra, sem sobreposição.
Em um data warehouse, a ocorrência de deadlocks causados por grande fluxo de dados é um fator crítico para o desempenho.
Certo
Errado
As técnicas de controle de concorrência são usadas para garantir a propriedade de não interferência ou isolamento das transações executadas simultaneamente. Algumas das principais técnicas usadas para controlar a execução concorrente de transações são baseadas no conceito de bloqueio de itens de dados. Considerando os tipos de bloqueios, assinale a opção que contém o esquema de bloqueio que possui dois estados — bloqueado e desbloqueado — e que é considerado muito restritivo para itens de banco de dados, porque no máximo uma transação pode manter um bloqueio em determinado item.
bloqueios compartilhados
bloqueios binários
bloqueios exclusivos
bloqueio em duas fases conservador
bloqueio em duas fases básico
Se um produtor envia um sinal de despertar (wakeup) para um consumidor que não esteja logicamente bloqueado, ambos podem ser permanentemente bloqueados. Assinale a alternativa que apresenta uma correção para essa situação.
Adicionar um contador de elementos produzidos.
Adicionar um contador de sinal de despertar.
Adicionar um contador de sinal de bloqueio do consumidor.
Adicionar um bit de espera por despertar ao quadro geral.
Introduzir um contador de itens no buffer para evitar que o consumidor tente ler antes que o produtor escreva.


Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
