Anterior Próximo Sumário Fale conosco! OpenBASE! o Banco de Dados inteligente!

Estratégia de Bloqueio

O acesso de atualização concorrente em um Banco de dados é definido pela estratégia de bloqueio, a qual será definida no Esquema do Banco de Dados.

Antes de descrever os tipos de bloqueios é importante explicar o que vem a ser uma transação para o OpenBASE: é uma seqüência de atualizações, podendo compreender um ou mais registros de um ou mais arquivos.

O início de uma transação é definida no OpenBASE, por um comando de bloqueio (LOCK) e o seu final por um comado de desbloqueio (UNLOCK). Isto não significa que somente os registros envolvidos na transação sejam bloqueados. Na verdade, o que vai determinar o universo de registros a serem bloqueados, é o tipo do bloqueio escolhido para o Banco de Dados.

Em uma aplicação do usuário escrita em OPUS, as transações que envolvem uma única atualização, não requerem que sejam explicitados os controles de LOCK e UNLOCK, devido ao fato destes controles, neste caso, serem tratados internamente pela OPUS. O OpenBASE implementa os seguintes tipos de bloqueio:

Bloqueio do Banco de Dados

Caso o usuário não defina no Esquema nenhum tipo de bloqueio para o banco de Dados, o OpenBASE assume o bloqueio automático do Banco de Dados, bloqueando todo o Banco de Dados a cada transação. Este tipo de bloqueio é "default", por ser o mais utilizado, em função das aplicações serem processadas em mono processadores. Isto quer dizer que o computador processa uma instrução de código de máquina por vez. Deste modo o acesso a disco também é feito um de cada vez.

As transações muito grandes em Banco de Dados gigantescos e de intensa concorrência podem inviabilizar a utilização do bloqueio de Banco de dados, caso contrário, o tempo que o Banco de Dados ficará bloqueado é praticamente imperceptível.

Para o OpenBASE, este tipo de bloqueio é bastante eficiente, econômico e seguro:

Bloqueio de Arquivos (BLOQARQ)

Este tipo de bloqueio é útil quando a natureza das aplicações se restringe a acessar registros de um único arquivo, ou seja, cada aplicação acessa um arquivo.

Bloqueio de Página (BLOQPAG)

Este tipo de Bloqueio define que todas as páginas onde estão contidos os registros a serem atualizados pelas transações, sejam bloqueados.

O tamanho de uma página de um arquivo, eqüivale 1024 bytes (1 Kb) e compreende um (ou parte de um) ou mais registros.

Bloqueio de Registro (BLOQREG)

Este tipo de Bloqueio define que todos os registros a serem atualizados pelas transações sejam bloqueados.

Observações :

Anterior Próximo Sumário Fale conosco! OpenBASE! o Banco de Dados inteligente!