[firebase-br] Otimização de Transação

Sandro Souza escovadordebits em gmail.com
Seg Nov 30 17:42:08 -03 2009


Bom dia/tarde Darlan.

Grande Darlan, eu posso estar redondamente errado, mas acredito que o commit
seja mais custoso.
Se uma transação foi iniciada e operações começaram a ser executadas dentro
dessa transação, no mínimo, alguma área temporária foi reservada para os
dados dessa nova transação (resultado dos SELECTs, registros alterados,
etc...).
No caso de um rollback, acredito que apenas seja liberada essa área
temporária (uma ou mais páginas alocadas temporariamente).
No caso de um commit, a brincadeira é maior, porque envolve a verificação de
cada uma das constraints definidas no banco, confrontando com os dados
atuais e válidos do mesmo, e estando tudo válido, ainda tem que alterar
algumas estruturas internas (índices, registros, etc...) para que sejam
utilizados os novos dados da transação efetivada, como sendo os novos dados
"oficialmente" válidos do banco.
Sendo assim, acredito que um commit é mais custoso que um rollback, mas como
já foi dito em um post anterior, se foram efetuadas apenas consultas, sem
qualquer tipo de alteração, não haveria diferença alguma.
Se eu estiver enganado, por favor queiram esclarecer.
Acho que esses assuntos são muito interessantes, e dizem respeito à
performance dos nossos sistemas.

2009/11/30 Darlan Hendges <darlan em agafarma.com.br>

> Boa tarde a todos,
>
> Tenho uma dúvida em relação a performance.
>
> O que é mais rápido o Commit ou Rollback? E porque?
>
>
> Abraço.....
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista