quinta-feira, fevereiro 10, 2011

Database Space Allocation Rules

Ao processar um comando adicionar ou atualizar registros, o núcleo Adabas pode ser necessário alocar uma medida adicional a qualquer dos componentes do arquivo a seguir:

* Address Converter (AC)
* Normal Index (NI)
* Upper Index (UI)
* Data Storage (DS)

Este documento descreve as regras para a alocação.

Address Converter (AC)

O tamanho do address converter é inicialmente definido pelo parâmetro MAXISN no utilitário ADALOD. O maior ISN real esperado é ligeiramente superior porque o address converter é armazenado em blocos inteiros. Por exemplo:

* Se RABNSIZE=3, MAXISN=5000 em um modelo de disco 3380 com 668 entradas por bloco (2004/3) resulta em 8 blocos. O ISN maior esperado (antes da expansão) é, portanto, 5.343 (668 * 8 - 1).
* Se RABNSIZE=4, MAXISN=5000 em um modelo de disco 3380 com 501 entradas por blocos (2004/4) resulta em 10 blocos. O ISN maior esperado é, portanto, 5009 (501 * 10 - 1).

O porque 2004/3 ou 2004/04 ? O dispositivo 3380 tem o ASSO 2004;

RABNSIZE=3, MAXISN=5000 - Device 3380 com 668 blocos
(2004/3=668) (668 * 8 - 1) = 5343

RABNSIZE=4, MAXISN=5000 - Device 3380 com 501 blocos
(2004/4=501) (501 * 10 - 1) = 5009

Se o núcleo Adabas exige uma medida adicional para um arquivo ao executar comandos N1, as tentativas de atribuição de rotina para localizar uma nova extent é de 25% do tamanho atual:

* Se uma medida não utilizados entre 25% e 28% pode ser encontrado utilizando a tabela de espaço livre (FST), que o espaço é tomado imediatamente;
* Se apenas extensões já estão disponíveis na FST, uma nova extent de exatamente 25% é tomada;
* Se apenas pequenas extensões estão disponíveis na FCT, a maior extent disponível é tomada;
* Se uma medida AC adicional é necessário, e o máximo já foi atribuído, Adabas irá retornar um código de resposta adequada ao programa de chamada;
* Se um arquivo possui o atributo de "one AC extent only" (por exemplo, se o arquivo é um arquivo expandido), uma tentativa de atribuir uma segunda medida no AC dar um response code.

Normal Index (NI), Upper Index (UI), Data Storage (DS)

Para efeitos de atribuição de uma nova extent, as seguintes fórmulas são usadas:

Z1 = ,OM ( 2 * B,(E-U) * B/U)
Z - MIN ( MAX(Z1,B/8 + 10 ),1000000)

Onde;

B - é o número de blocos alocados no momento.
E - ISN maior que o esperado.
U - maior ISN atualmente afetados.

Se uma medida encontrada na FST é contínua com o fim de uma medida anterior, é atribuída por um período máximo de blocos Z.

Se nenhuma medida essas podem ser encontradas na FST

* mas uma medida entre Z e 9 * Z8 é encontrado, ele é alocada.
* mas uma extent com mais de 9 * Z8 blocos é encontrada, então uma nova extent é alocada com blocos exatamente Z.
* a mais longa extent na FST é atribuído como a nova extent.

Além disso, se o parâmetro MAXNI, MAXUI ou MAXDS é especificado para o arquivo atual, o núcleo não aloca mais do que o número máximo especificado de blocos para a NI, a IU, ou DS, respectivamente.

Fonte: Clique Aqui

0 comentários:

Enviar um comentário