Artigo Clube Delphi Edição 18 - Interbase: o que faz diferente?

Artigo da Revista Clube Delphi Edição 18.

Esse artigo faz parte da revista Clube Delphi edição 18. Clique aqui para ler todos os artigos desta edição

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

Interbase: o que faz diferente?

 

Este mês trago a vocês um resumo de um artigo publicado por Bill Todd, uma das pessoas com maior entendimento em Interbase no mundo, que trata das diferenças na sua arquitetura frente aos outros servidores SQL do mercado.

As arquiteturas de servidores de banco de dados variam amplamente, e como resultado o comportamento deles em uma determinada situação também.

A diferenca mais significante entre o Interbase e outros servidores de banco de daods é sua arquitetura multi-gerencional (versioning), também chamada de arquitetura de versões. Para entender como ela é direrente, precisamos explorar os diferentes métodos de controle de acesso simultâneo aos dados em um ambiente multi-usuário.

 

Esquemas de travamento

O mais antigo e mais comom método de controlar o acesso simultâneo aos dados por vários usuários é o travamento ou bloqueio. Quando um usuário trava um objeto em um banco de dados, ele restringe a possibilidade de outros usuários terem acesso àquele objeto. Quando uma trava afeta a concorrencia em uma tablema inteira, ela restringe o acesso de outros usuários em todos os registros da tabela. Portanto, uma trava de tabela tem uma granularidade muito baixa. Uma trava em nível de página na tabela limita o acesso a todos os registros pertencetes àquela página, sendo mais granular do que uma trava em nível de tabela. Em contraste, uma trava atribuída a um simples registro é muito granular, e provê a restrição mínima ao acesso simultâneo de dados.

O prblema no caso do travamento de página é facil de se verificar, bastando considerar o seguinte exemplo: suponhamos que o tamanho de uma página é 2k (2048 bytes), e o tamanho de um registro é 100 bytes; como cada página poderá armazenar até 20 registros, cada vez que uma página for travada, 20 registros serão bloqueados. No travamento em nível de registro, somente um único registro seria travado, e outros usuários estariam livres para ter acesso aos outros registros na página, portanto um travamento de registro provê uma concorrência melhor." [...] continue lendo...

Artigos relacionados