terça-feira, julho 29, 2014

Descobrir o Tamanho de um File Adabas em Byte, Kb, Mb e Gb

Abaixo vamos mostrar como pegar os valores dos blocos de um file Adabas e converter para valores de Byte, Kb, Mb e Gb.
O file 81 abaixo repare nos valores em blocos no Space Allocated;
13:16:03          ***** A D A B A S  BASIC  SERVICES *****       2011-03-11  
  DBID 240                   - Display File Layout -                  PDRF022  
  File 81                                                                      
                                                                                
     I Dev  LiI  Space allocated  I      From         To    I Unused            
     I Type TyI  Blocks   / Cyls. I      RABN         RABN  I BLOCKS  /  Cyls.  
-----I--------I-------------------I ------------------------I------------------
     I        I                   I                         I                  
ASSO I 8391 ACI    46569      258 I    1778126 -    1824694 I        0        0
     I 8391 UII      288        1 I    1929063 -    1929350 I        0        0
     I 8391 NII   104368      579 I    1824695 -    1929062 I        0        0
     I        I                   I                         I                  
DATA I 8391 DSI   890219    11869 I    1565122 -    2455340 I        0        0
                                                                                
  PF1----- PF2------ PF3------ PF4------ PF6----- PF7----- PF8----- PF12-----  
  Help               Exit      Refresh                              Menu
Device And File Considerations

No Adabas temos esses tipos de device disponíveis;
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| Device | Trks/Cyl | ASSO      | DATA      | WORK      | PLOG/RLOG | CLOG      | TEMP/SORT/DSIM | Notes |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 0512   | 16       | 2044:8    | 4092:4    | 8192:2    | 8192:2    | 8192:2    | 8192:2         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3310   | 11       | 2044:8    | 4092:4    | 4096:4    | 4096:4    | 4096:4    | 8192:2         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3330   | 19       | 1510:8    | 3140:4    | 4252:3    | 4252:3    | 3156:4    | 3140:4         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3340   | 12       | 1255:6    | 2678:3    | 3516:2    | 3516:2    | 3516:2    | 3500:2         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3350   | 30       | 1564:11   | 3008:6    | 4628:4    | 4628:4    | 3024:6    | 3008:6         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3370   | 12       | 2044:15   | 3068:10   | 5120:6    | 5120:6    | 3072:10   | 7680:4         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3375   | 12       | 2016:15   | 4092:8    | 4096:8    | 4096:8    | 4096:8    | 8608:4         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3380   | 15       | 2004:19   | 4820:9    | 5492:8    | 5492:8    | 4820:9    | 7476:6         | 3     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 3390   | 15       | 2544:18   | 5064:10   | 5724:9    | 5724:9    | 5064:10   | 8904:6         | 3     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8345   | 15       | 4092:10   | 22780:2   | 22920:2   | 22920:2   | 22920:2   | 22920:2        |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8350   | 30       | 3008:6    | 6232:3    | 9442:2    | 9442:2    | 9442:2    | 9442:2         | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8380   | 15       | 3476:12   | 6356:7    | 9076:5    | 9076:5    | 9076:5    | 9076:5         | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8381   | 15       | 3476:12   | 9076:5    | 11476:4   | 11476:4   | 9076:5    | 9076:5         | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8385   | 15       | 4092:10   | 23292:2   | 23468:2   | 23468:2   | 23468:2   | 23468:2        | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8390   | 15       | 3440:14   | 6518:8    | 10706:5   | 10706:5   | 8904:6    | 8904:6         | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8391   | 15       | 4136:12   | 10796:5   | 13682:4   | 13682:4   | 8904:6    | 18452:3        | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8392   | 15       | 4092:12   | 12796:4   | 18452:3   | 18452:3   | 18452:3   | 18452:3        | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8393   | 15       | 4092:12   | 27644:2   | 27990:2   | 27990:2   | 27990:2   | 27990:2        | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 9332   | 6        | 2044:10   | 4092:5    | 5120:4    | 5120:4    | 10240:2   | 10240:2        | 2     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 9335   | 6        | 2556:14   | 3580:10   | 5120:7    | 5120:7    | 7168:5    | 7168:5         |       |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 9345   | 15       | 4092:10   | 7164:6    | 11148:4   | 11148:4   | 22920:2   | 22920:2        | 3     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+ 
Exemplo

Vamos calcular o devide 8391, este vai ser o calculo que vamos usar;
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| Device | Trks/Cyl | ASSO      | DATA      | WORK      | PLOG/RLOG | CLOG      | TEMP/SORT/DSIM | Notes |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
| 8391   | 15       | 4136:12   | 10796:5   | 13682:4   | 13682:4   | 8904:6    | 18452:3        | 1     |
+--------+----------+-----------+-----------+-----------+-----------+-----------+----------------+-------+
Formula para calculo

Vamos usar esta formula;
Bloco * Device_And_File_Considerations = Tamanho_em_Bytes
               Tamanho_em_Bytes / 1024 = Tamanho_em_Kb
                 Tamanho_em_Kb  / 1024 = Tamanho_em_Mb
                 Tamanho_em_Mb  / 1024 = Tamanho_em_Gb
Calculando DS

O file 81 o DS tem 890219 de blocos no Device And File Considerations o device 8391 o valor do DATA é 10796.
890219 * 10796    = 9610804324        (9.610.804.324 bytes)
9610804324 / 1024 = 9385551,09765625  (9.385.551 Kb)
9385087 / 1024    = 9165,577243804932 (9.165 Mb)
9165 / 1024       = 8,950759027153254 (8.9501953125 Gb)
Calculando AC

O file 81 o AC tem 46569 de blocos no Device And File Considerations o device 8391 o valor do ASSOCIATOR é 4136.
46569 * 4136             = 192609384          (192.609.384 bytes)
192609384 / 1024         = 188095,1015625     (188.095 kb)
188095,1015625 / 1024    = 183,6866226196289  (183,6866226196289 Mb)
183,6866226196289 / 1024 = 0,1793814674019813 (0,1793814674019813 Gb)
Calculando o NI

O file 81 o NI tem 104368 de blocos no Device And File Considerations o device 8391 o valor do ASSOCIATOR é 4136.
104368 * 4136            = 431666048           (431.666.048 bytes)
431666048 / 1024         = 421548,875          (421.548 kb)
421548,875 / 1024        = 411,6688232421875   (411,6688232421875 Mb)
411,6688232421875 / 1024 = 0,4020203351974487  (0,4020203351974487 Gb)
Convertendo Automaticamente Blocos para Gb Adabas do Device 8391

Descobrindo o tamanho de blocos de um file Adabas de um device 8391 para Gb;

Tamanho de Blocos


Escolha o Formato


Seguindo o exemplo do file 81 temos esses resultados;
+----+--------------------------------+
| AC | 46569  | 0,1793814674019813 Gb |
| UI | 288    | 0.0011093616485595 Gb |
| NI | 104368 | 0,4020203351974487 Gb |
| DS | 890219 | 8.9501953125 Gb       |
+----+--------------------------------+
Considerações

Onde fica cada device;
+------------+---------------------+------------------+
| Abreviação | Extensão Logica     | Extensão física  |
+------------+---------------------+------------------+
| DS         | Data Storage        | Data Storage     |
+------------+---------------------+------------------+
| AC         | address converter   | Associator       |
+------------+---------------------+------------------+
| NI         | normal index        | Associator       |
+------------+---------------------+------------------+
| UI         | upper index         | Associator       |
+------------+---------------------+------------------+
DATA STORAGE (DS) - É onde estão os dados dos usuários no banco.

NORMAL INDEX (NI) - Contém efetivamente as listas invertidas correspondente aos valores dos campos definidos como descritores.

ADDRESS CONVERTER (AC) Determina a localização física de um registro. Trata - se de um índice que os mapas lógico identificador de um registro (ou seja, o ISN), para o parente Adabas bloco número (RABN) do Data Storage bloco onde o registro é armazenado.

UPPER INDEX (UI) - É um resumo do NI, ele contém as listas invertidas (resumos) para poder encontrar mais rapido o registro. Em arquivos grandes ele é muito usado, para o Adabas encontrar a localização de um registro na lista invertida ele vai no UI e encontra o resumo de onde esta o registro, sabendo onde esta vai no NI direto no registro, se não tivesse o Upper Index para encontrar na lista invertida o registro o Adabas teria que pesquisar toda a lista do NI para poder encontrar.

0 comentários:

Enviar um comentário