-
Questão que merece ser anulada.
Justificativa abaixo dado por Marcio Vitorino.
Segundo Elmasri e Navathe (2002, p. 554) as principais estratégias utilizadas em transações OLTP para evitar deadlocks são
Bloqueio em Duas Fases Conservador, Ordenamento de Registros de Timestamp e > Validação.
> > No entanto, a questão afirma que "Para que não ocorram deadlocks
> > no sistema a ser desenvolvido pela equipe, deve-se evitar o desenho de
> > transações do SGBD nas quais o usuário precise realizar entrada de dados,
> > especialmente em sistemas de processamento transacional online."
> >
> > Esta afirmação afirma que basta evitarmos entradas de dados para
> > que não ocorram deadlock, quando na verdade as operações de exclusão e
> > atualização de dados também causam deadlock.
> >
> > ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de Dados - Fundamentos e
> > Aplicações. 3. ed. Rio de Janeiro: LTC S.A., 2002. 837p.
> >
> > Marcio Victorino
-
Concordo com o colega. A resposta correta da questão causa muita estranheza. Ao estudarmos o assunto nos deparamos com vários protocolos para evitar deadlocks, já que a entrada de dados é necessária.
Discordo num ponto. Podemos talvez interpretar por "entrada de dados" qualquer alteração, não apenas inclusão, mas também alteração e exclusão. Digo isso por que neste estudo resumimos as operações em "read"s e "write"s.
Mesmo considerando isso, discordo do gabarito, principalmente por que a necessidade de entrada de dados será ditada pela necessidade do negócio, não cabendo ao analista/DBA evitá-las ou não. Se num OLTP qualquer é preciso, por exemplo, registrar vendas, não há opção de evitar tais registros (inclusão, exclusão e alteração). Um OLTP implica especialmente nisso na maioria dos casso. Se a questão estivesse salientando a parte OLAP (mencionada implicitamente no enunciado em "suporte a decisão") eu até concordaria.
Na página da CESPE o gabarito ainda consta como preliminar:
http://www.cespe.unb.br/concursos/TCU2010/
Vamos aguardar.
-
O gabarito foi alterado de Certo para Errado em 08/09. Vide questão 145 da prova.
Link da prova: http://www.cespe.unb.br/concursos/TCU2010/arquivos/TCU10_001_5.pdf
Link da correção: http://www.cespe.unb.br/concursos/TCU2010/arquivos/TCU_10_TI_JUSTIFICATIVAS_DE_ALTERAO_DE_GABARITO.PDF
Abs, Edu.
-
Olá, pessoal!
O gabarito foi atualizado para "E", após recursos, conforme edital publicado pela banca, e postado no site.
Justificativa da banca: O item é claro ao indicar que as transações as quais se refere são aquelas do SGBD delimitadas por BEGIN e END transaction. Dessa forma, ao afirmar que “deve-se evitar o desenho de transações do SGBD nas quais o usuário precise realizar entrada de dados", está claro que a entrada de dados seria aquela realizada no escopo da transação do SGBD, e não antes ou depois da transação. Sob outro aspecto, não se pode afirmar que as entradas de dados feitas pelo usuário provocam apenas inclusão, uma vez que a exclusão ou atualização de dados também envolvem entrada de dados. O item está errado, pois afirma que evitar o desenho de transações do SGBD nas quais o usuário precise realizar entrada de dados é condição necessária e suficiente para que se obtenha um sistema livre de deadlocks, quando, de fato, existem outros aspectos envolvidos.
Bons estudos!