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

Arquivos de Dados e de Índices

Um arquivo de dados é um arquivo relativo. Seus registros são de tamanho fixo, podendo ser dividido em duas áreas distintas (cabeçalho e dados). Um arquivo de índice é um arquivo indexado tipo "Btree".

O OpenBASE implementa dois tipos de arquivos de índices (simples e estruturado), em função da restrição de unicidade das chaves.

Chaves primárias e chave secundária únicas determinam a utilização de índices simples, onde a chave mantém uma relação das mesmas com os registros no arquivo de dados de (1:1).

Chaves secundárias não únicas determinam a utilização de índices estruturados, onde a chave mantém uma relação com o registro no arquivo de dados de (1:n).

No arquivo de dados, para cada chave secundária não única, é criada uma área adicional no registro, representada por duas colunas. Esta área é denominada de cabeçalho e cada coluna desta área corresponde a uma entrada na lista duplamente encadeada.

Tamanho do Registro de Arquivo de Dados

O tamanho em bytes do registro de um arquivo de dados, varia em função do tamanho da área de dados (soma dos tamanhos dos itens de dados do registro) e do tamanho da área de cabeçalhos (soma dos cabeçalhos resultantes das chaves secundárias não unívocas).

Para calcular o tamanho em bytes do registro de um arquivo de dados aplica-se a seguinte fórmula:

TRAD = (QCNU * 6) + TSID

Tamanho de Registro de Arquivo de Índice

O tamanho em bytes do registro de um arquivo de índice varia em relação ao seu tipo (simples ou estruturado).

Antes de descrever as fórmulas de cálculo do tamanho dos registros desses arquivos de índices, é importante lembrar que a implementação dos índices está baseada na estrutura de árvore binária balanceada: uma "Btree".

A "Btree" do OpenBASE, possui controles internos que necessitam de uma área adicional nos registros de índices. Estes controles são denominados de nos da "Btree" e são totalmente transparentes para o usuário. Para não fugir do objetivo deste manual, será descrita somente a sua ocupação, sem entrar em maiores detalhes sobre a arquitetura de uma "Btree".

Tamanho dos arquivos de Índice Simples

Para calcular o tamanho em bytes do registro de um arquivo de índice do tipo simples, aplica-se a seguinte fórmula:

TRIS = TACB + TAE + TC

TRIS    tamanho do registro

TACB     tamanho da área de controle da "Btree" = 1 byte

TAE     tamanho da área de endereço = 4 bytes

TC     tamanho da chave

Tamanho dos arquivos de Índice Estruturado

O cálculo do tamanho em bytes do registro de um arquivo de índice do tipo estruturado, é efetuado aplicando-se a fórmula:

TRIE = TACB + TAFR + TAEP+ TAEU + TC

TRIE     tamanho do registro

TACB     tamanho da área de controle da "Btree" = 1 byte

TAFR     tam. área de armazenamento da freqüência = 4 bytes

TAEP     tam. área de endereço do primeiro da lista = 4 bytes

TAEU     tam. área de endereço do ultimo da lista = 4 bytes

TC     tamanho da chave

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