Compartilhando conhecimento com o mundo

Com tecnologia do Blogger.

Pesquisa

Download

Blogger Tricks

Blogger Themes

Visitas

Assuntos

10/27/2015

O que é um catálogo no Mainframe?


Um catálogo descreve atributos do data set e indica os volumes em que ele está localizado.

Quando um data set é catalogado, ele pode ser referido pelo nome, sem que o usuário precise especificar onde o data set está armazenado. Os data set podem ser catalogados, descatalogados, ou recatalogados. Todos os discos onde estão os data set gerenciados pelo sistema são catalogados automaticamente em um catálogo.

Catalogar o data set em fita magnética não é necessário, mas isso pode simplificar tarefas dos usuários.

No z/OS, o Master Catalog e o User Catalogs armazenam as localizações dos data sets. Ambos os discos e fitas dos data sets podem ser catalogados. Para encontrar um data set que você solicitou, z/OS deve saber três informações:

- Nome do data sets;
- Nome do volume;
- Unidade (do tipo de dispositivo de volume, tal como um disco ou fita 3390 3590);

Você pode especificar todos os três valores em painéis ISPF ou em JCL. No entanto, o tipo de dispositivo de unidade e o volume muitas vezes não são relevantes para um usuário final ou a um programa. Um catálogo do sistema é usado para armazenar e recuperar a locação da UNIT e o VOLUME de um dataset. Em sua forma mais básica, um catálogo pode fornecer o tipo de dispositivo da unidade e nome do volume para qualquer data set que está catalogado. Um catálogo do sistema fornece uma função de consulta simples. Com esta facilidade o usuário só precisa fornecer um o nome do data set.

Master Catalog e User Catalog

Um sistema z/OS tem sempre, pelo menos, um Master Catalog. Se ele tem um único catálogo, este catálogo seria o Master Catalog e as entradas de localização para todos os data sets seriam armazenados nele. Um único catálogo, no entanto, seria eficiente nem flexível, para um sistema típico z/OS usa um catálogo principal e numerosos catálogos de usuários conectados a ele.

Um User Catalog armazena o nome e a localização de um data set (DSN/volume/unidade). O Master Catalog geralmente armazena apenas um dataset High-Level Qualifier (HLQ) com o nome do user catalog, que contém a localização de todos os conjuntos de dados pré-fixados por esta HLQ. O HLQ é chamado um alias.

Como regra geral, todos os data sets do usuário de instalação z/OS são catalogados. Data sets não catalogadas raramente são necessários e sua utilização está frequentemente relacionado a problemas de recuperação ou instalação de novo software. Data sets criados através ISPF são automaticamente catalogado.

Exemplo Pratico

Vamos usar o catalogo para pegar um determinado arquivo, temos 5 arquivos;
 ADABAS.S.BACKUP.DB106.FTP*                       Type  on Volume(s)
ADABAS.S.BACKUP.DB106.FTP.G0753V00                SEQ   PDW999
ADABAS.S.BACKUP.DB106.FTP.G0754V00                SEQ   PDW999
ADABAS.S.BACKUP.DB106.FTP.G0755V00                SEQ   PDW999
ADABAS.S.BACKUP.DB106.FTP.G0756V00                SEQ   PDW999
********** End of Dataset List **********

Lendo o Último arquivo


Quero pegar o último que foi gravado pelo catalogo e ler e gravar na fila do spool;
//AACGENER JOB (DBA,MASTER),'DBA',CLASS=S,MSGCLASS=A
//*UQ ALLOW
//* --------------------------------------------------
//*      LENDO DATA SET E JOGANDO NA FILA DO SPOOL
//* --------------------------------------------------
//GRAVA1   EXEC PGM=ICEGENER
//SYSPRINT DD SYSOUT=A
//SYSUT1   DD DSN=ADABAS.S.BACKUP.DB106.FTP(0),DISP=OLD
//SYSUT2   DD SYSOUT=G
//SYSIN    DD DUMMY
Resultado
1Logon accepted to library DBA.
1NEXT AABPBK04 230
1_______________________________________________________________________________
 *  A D A S A V                                   DB HOMOLOGACAO 106
 _______________________________________________________________________________
 22222   5555555    111     00000     111    5555555      DDDDDD    OOOOO   MMM   MMM  IIIIIII  NNN  NNN   GGGGG    OOOOO           
22  222  555       1111    000 000   1111    555          DDD DDD  OOO OOO  MMM   MMM    III    NNNN NNN  GGG      OOO OOO          
   222   555      11111    000 000  11111    555          DDD DDD  OOO OOO  MMMMMMMMM    III    NNNN NNN  GGG      OOO OOO          
  222    5555555    111    000 000    111    5555555      DDD DDD  OOO OOO  MMM M MMM    III    NNN NNNN  GGG GGG  OOO OOO          
 222         555    111    000 000    111        555      DDD DDD  OOO OOO  MMM   MMM    III    NNN NNNN  GGG GGG  OOO OOO          
222          555    111    000 000    111        555      DDD DDD  OOO OOO  MMM   MMM    III    NNN  NNN  GGG GGG  OOO OOO          
2222222  5555555  1111111   00000   1111111  5555555      DDDDDD    OOOOO   MMM   MMM  IIIIIII  NNN  NNN   GGGGG    OOOOO
 VOLSER-Table:
 -------------
  I No. I Type I VOLSER I Device I     High   I Tape  I  Size in I
  I     I      I        I        I     RABN   I Drive I  Tracks  I
  I-----I------I--------I--------I------------I-------I----------I
  I   1 I ASSO I DPL001 I  8391  I     539988 I    1  I   12874  I
  I   2 I ASSO I DPL002 I  8391  I    1079988 I    0  I       0  I
  I   3 I DATA I DPL001 I  8391  I     526195 I    1  I   88720  I
  I   4 I DATA I DPL002 I  8391  I    1052395 I    1  I     383  I
--------------------------------------------------------------------------------
OP=S CL=ALL IN=ALL JB=AACGENER,04413 DS=2 SI=SO LR=1 LL=80 PP=0 DC= RL=999999
AD=J DE= SC= PT= SQ=C RR=0 OC= SD=2000   26.10.2015, 18:14:28

Lendo o Antepenúltimo arquivo


Vamos pegar o antepenuntimo arquivo e jogar ele na fila do spool;
//AACGENER JOB (DBA,MASTER),'DBA',CLASS=S,MSGCLASS=A
//*UQ ALLOW
//* --------------------------------------------------
//*      LENDO DATA SET E JOGANDO NA FILA DO SPOOL
//* --------------------------------------------------
//GRAVA1   EXEC PGM=ICEGENER
//SYSPRINT DD SYSOUT=A
//SYSUT1   DD DSN=ADABAS.S.BACKUP.DB106.FTP(-1),DISP=OLD
//SYSUT2   DD SYSOUT=G
//SYSIN    DD DUMMY
Resultado
1Logon accepted to library DBA.
1NEXT AABPBK04 230
1_______________________________________________________________________________
 *  A D A S A V                                   DB HOMOLOGACAO 106
 _______________________________________________________________________________
 22222    33333     111     00000     111    5555555       SSSSS   EEEEEEE  XXX   XXX  TTTTTTT   AAAAA                              
22  222  33  333   1111    000 000   1111    555          SSS  SS  EEE       XXX XXX     TTT    AAA AAA                             
   222       333  11111    000 000  11111    555          SSSS     EEE        XXXX       TTT    AAA AAA                             
  222       333     111    000 000    111    5555555        SSSS   EEEEEEE    XXXX       TTT    AAAAAAA                             
 222         333    111    000 000    111        555         SSSS  EEE        XXXXX      TTT    AAA AAA                             
222      33  333    111    000 000    111        555      SS  SSS  EEE       XXX XXX     TTT    AAA AAA                             
2222222   33333   1111111   00000   1111111  5555555       SSSS    EEEEEEE  XXX   XXX    TTT    AAA AAA   
 VOLSER-Table:
 -------------
  I No. I Type I VOLSER I Device I     High   I Tape  I  Size in I
  I     I      I        I        I     RABN   I Drive I  Tracks  I
  I-----I------I--------I--------I------------I-------I----------I
  I   1 I ASSO I DPL001 I  8391  I     539988 I    1  I   12873  I
  I   2 I ASSO I DPL002 I  8391  I    1079988 I    0  I       0  I
  I   3 I DATA I DPL001 I  8391  I     526195 I    1  I   88713  I
  I   4 I DATA I DPL002 I  8391  I    1052395 I    1  I     382  I
--------------------------------------------------------------------------------
OP=S CL=ALL IN=ALL JB=AACGENER,04414 DS=2 SI=SO LR=1 LL=80 PP=0 DC= RL=999999
AD=J DE= SC= PT= SQ=C RR=0 OC= SD=2000   26.10.2015, 18:15:49
Clique Aqui