[firebase-br] Transaction Read only para relatórios.

Walter R. Ojeda Valiente sistemas2000profesional em gmail.com
Ter Jan 19 01:34:44 -03 2016


Si una transacción solamente va a realizar un SELECT (o varios SELECT)
entonces es preferible y recomendable que su acceso sea READ ONLY, porque
las transacciones READ ONLY son más rápidas que las transacciones READ
WRITE, sobre todo en las situaciones donde pueden ocurrir conflictos porque
muchos usuarios están usando la misma fila de la misma tabla.

Sin embargo, si la aplicación es mono-usuario o si nadie estará realizando
un UPDATE o un DELETE a una fila que está en el conjunto resultado de un
SELECT, casi no hay diferencia de velocidad porque las computadoras
modernas son muy rápidas y usar READ ONLY o usar READ WRITE es cuestión de
gustos.

De todas maneras, lo lógico, lo recomendable, es siempre usar READ ONLY en
las transacciones que solamente harán SELECTs. Por algo existen las
transacciones con acceso READ ONLY, por algo se las inventó.

Saludos.

Walter.




2016-01-11 7:47 GMT-04:00 Joel <big.rid.listas em gmail.com>:

> No slide 69, do link
> http://pt.slideshare.net/ibsurgeon/3-how-transactionswork , encontrei a
> frase:
>
> "Use read commited Read Only transactions for SELECTs"
>
>
> Neste outro link, http://www.devrace.com/en/fibplus/articles/479.php
> encontrei a frase:
>
> "Read only transactions are probably better because the server does not
> need to save  all the changes in a database for finding conflicts with
> other transactions."
>
>
> No livro "Dominando Firebird - Uma Referência Para Desenvolvedores de
> Banco de Dados", da Helen Borrie, encontrei, na página 485 "Modo de
> Acesso" encontrei a dica:
> "Um dos benefícios de uma transação READ ONLY é sua habilidade de
> permitir a seleção de dados para a interface de usuário sem amarrar
> recursos em excesso no servidor. Assegure-se de que suas transações
> apenas de leitura estejam configuradas com o nível de isolamento READ
> COMMITED para garantir que a coleta de lixo no servidor possa prosseguir
> por esta transação."
>
>
> Até hoje, utilizei uma mesma transaction, read-write, para insert,
> update, delete e select.
> Vocês utilizam uma transaction exclusiva para relatórios ?
>
>
> Parece óbvio, mas gostaria de entender melhor antes de alterar os meus
> relatórios para read-only.
> Quero avaliar se vale a pena criar uma transaction read-only para os
> cursores que só fazem leitura.
>
> Att.
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista