Adabas - Fundamentos
TRA001-44E
Contedo
Captulo
1 Captulo 2 Captulo 3 Captulo 4 Captulo 5 Captulo 6
Informao e Comunicao Fundamentos de Banco de Dados Adabas - Arquitetura Adabas - Definio de Arquivo Adabas - Lgica de Acesso Database - Modificaes, Reincio & Recuperao
Software AG
Headquarters: Darmstadt Worldwide representation
Branch offices of SAG Systemhaus GmbH: Darmstadt Hamburg Dusseldorf Munich Berlin Hannover Nuremberg Stuttgart
Software AG - Vendas
Vendas (million )
600 500 400 300 200 100 0 1998 1999 2000 2001
Customers in: Financial Services Public Administration Industry and Pharmaceutical Industry Trade, Logistics, Media, Telecommunication
1
Informao e Comunicao
Informao na Empresa
Contabilidade
Recursos Humanos
Marketing / Vendas
bot Ange
Compras
Desenvolvimento/ Produo
Estoque / Expedio
Atividade Operacional
Gerenciamento
Contabilidade
Recursos Humanos
Marketing / Vendas
bot A nge
Recebimento de pagamentos Memorandos
Pagamentos Sistema de vagas
Catlogo de produtos Preo de vendas
Compras
Desenvolvimento/ Produo
Estoque/Expedio
Novas compras Compras para produo
Conta de materiais Utilizao de equipamentos
Inventrio Ordem de expedio
Apoio da TI para tarefas Operacionais
Desenvolv. de Aplicaes Ferramentas de planejamento Documentao Ambiente de Programao
Sistema de TI Operational
Aplicaes
Database Comum
Tarefas Organizacionais
Gerenciamento
Estatsticas / Previses
Contabilidade
Recursos Humanos
Marketing / Vendas
bot Ange
Credibilidade Financeira de clientes Compras
Panorama de funcionrios por vrios critrios Desenvolvimento/Produo
Estatsticas de vendas Viso geral de clientes Anlise de mercado Estoque/Expedio
Informaes em artigos Dados de produo
Planejamento da Produo
Viso Geral de fornecedores por vrios critrios
Apoio da TI para tarefas Organizacionais
Sistema de TI Operacional
Estatsticas Individuais
Database Comum
Comunicao: instrumento para Atividade
Servios Contbeis
Banking Servios Online
bot A nge
DBs Pesquisa DBs - patentes Fornecedores
Parcerias Comerciais
Clientes
Comrcio/ Usurios finais
Processamento de Informaes Integradas
EDI, XML WAN
1. Qrtl. 2. Qrtl. 3. Qrtl. 4. Qrtl.
Internet Fax
Database Comum
Intranet
Resumo
As atividades operacionais e organizacionais das empresas so amparadas por Sistemas de Informao. Sistemas de Informaes modernos integram funes das aplicaes operacionais, processamento de informaes individuais e tecnologias de comunicao diretamente no local de trabalho dos usurios. Todos os sistemas podem acessar os dados corrente usando um Database comum. Com seus produtos e servios, a Software AG seu parceiro profissional e eficiente para planejar e implementar modernos Sistemas de Informao.
2
Fundamentos de Bancos de Dados
Sistemas de Arquivos
Batch
Online
Aplicaes PC / Web
Sort Merge
Transfer
Banco de Dados
Batch
Online
Aplicaes PC / Web
Database
Database / Desenho de Databases
Aplicaes
Requisitos de informaes
Aplicaes
Requisitos de Informaes
Viso Externa
DBMS
Viso Interna
Dados
Desenho do Database
Anlise de Dados
Departamento possui Carro dirigem assinam Artigos envolvem Faturam Faturas Pedidos fazem Clientes Funcionrios (Vendedores)
Modelo de Dados Hierrquico
Departamento
Funcionrios
Carros
Pedidos
Clientes
Artigos
Faturas
Modelo de Dados em Rede
Departamento
Funcionrios
Clientes
Carros
Pedidos
Artigos
Faturas
Modelo de Dados Relacional
Department ID
Departamento
Personnel Funcionrio Department ID ID
Customer ID
Cliente
Carro
Personnel ID
Order ID
Pedido
Personnel ID
Customer ID
Artigo
Order ID
Article ID
Fatura
Order ID
Article ID
Artigo
Administrao de Databases
Usurio Administrador de Dados Administrador do Database
Requisitos da Aplicao Desenho de Dados Organizao dos Dados
Dicionrio de Dados Utilitrios
Performance, Gerncia de espao Desenho do Database Instalao Backups Recuperao Organizao Operacional
Database
Resumo
O uso de um Banco de Dados reduz a redundncia de dados, aumenta a flexibilidade, permite acessos paralelos a partir de diferentes ambientes e modificaes concorrentes atravs de diferentes usurios. O DBMS reconhece a estrutura interna de armazenamento do Database (viso interna) e prepara os dados em sintonia com as necessidades da aplicao (viso externa). Durante os processos de desenho dos Dados e do Database, o dado transformado. Isso permite o mximo de flexibilidade para a aplicao e melhor explorao das caractersticas fsicas do sistema de Banco de Dados. A Administrao de Dados e de Databases so funes importantes para a organizao e operao tcnica de um sistema de Banco de Dados.
3
Adabas - Arquitetura
Plataformas
Com-plete, TSO, CICS, IMS/TM, TIAM, UTM, Batch
ENTIRE NET-WORK
ODBC
Internet Intranet
OS/390, z/OS VSE VM/CMS BS2000
Adaptable DAtaBAse System
OS/400 Unix Linux OpenVMS Windows
Database - Componentes
Associator
ASSO Informaes de Controle - Database - User data
Data Storage
DATA
Dados de Usurio
Work Dataset
WORK Dados operacionais temporrios
Data Storage
DATA
ASSO
Dados de usurio
WORK
Data Storage: System File do Database
Dados no Banco de Dados
DATA
1 2 3 4 5
FLETCHER SMITH FLETCHER SAMMET
LILLY
MARK GILBERT WILLY
CLIMENSON JENNY
EMPLOYEES VEHICLES
File
Coleo de registros de dados Intervalo de blocos Registro Seqncia de campos ISN Internal Sequence Number Nmero nico identificador de registro em um arquivo
Conceito de Campo (Field)
EMPLOYEES
ISN PERSONNEL-ID NAME FIRST-NAME DEPT
1 2
20023400 20000400
FLETCHER LILLY SMITH MARK
MGMT10 SALE20
Compresso
Registro de dados original 20023400 FLETCHER LILLY MGMT10
Compresso Compresso
Registro comprimido
20023400 FLETCHER LILLY MGMT10
Compresso / Estrutura de Bloco
Compresso Compresso
Registro comprimido
ISN
Bloco fsico
Espao de Padding (expanso)
Bloco fsico
ISN
20023400 FLETCHER
LILLY
Bloco fsico
ISN
20023400 FLETCHEROKE LILLY
Alocao de extenses (Extents)
DATA
EMPLOYEES VEHICLES EMPLOYEES
(2nd Extent)
Extenso automtica para os dados existentes
O Associator
Associator
ASSO DATA Informaes de controle - Database - User data
WORK
Associator: System File do Database
Associator
NAME
Conceito de Descritor
FLETCHER
Data Storage
EMPLOYEES ISN PERSONNEL-ID NAME FIRST-NAME DEPT
20023400
FLETCHER LILLY FLETCHER
MGMT10
Lista Invertida
EMPLOYEES
ISN 1
Lista Invertida por Descritor NAME CLIMENSON 1
NAME FLETCHER SMITH
CLIMENSON
2 3 3 7 1, 4 5 2, 6, 8 4 5 6 7 8 1 1 3
FLETCHER SAMMET SMITH EVANS SMITH
EVANS SAMMET SMITH
FLETCHER 2
ndice para cada descritor
Address Converter (Conversor de endereos)
ASSO
Lista Invertida NAME
CLIMENSON
DATA
Address Converter
1 1 1 3
EVANS SAMMET SMITH
3 7 1, 4 5 2, 6, 8
FLETCHER 2
4312 4314 4313 4315 4312 4315 4313 4314
4312 4313 4314 4315
1 3 2 4
FLETCHER
CLIMENSON
5 7 8 6
SAMMET EVANS SMITH SMITH
SMITH FLETCHER
Conexo lgica entre a Lista Invertida e os Registros de dados
Ncleo do Adabas
online batch
Mdulo de Comunicao Mdulo de Comunicao
Utility
Mdulo de Comunicao
Ncleo Adabas
ASSO DATA WORK
Acessos Paralelos Alteraes concorrentes Processamento otimizado
Buffer Pool
Read employee FLETCHER Read employee FLETCHER
Ncleo Adabas
I/O Buffer
FLETCHER 2 4312
1, 4
5
4312 4314 4313 4315
SAMMET
1 FLETCHER
ASSO
DATA
WORK
Processamento campo-a-campo
Read employee FLETCHER Display Name and Dept FLETCHER FLETCHER MGMT30 MGMT30
Ncleo Adabas
I/O Buffer
4312
1
FLETCHER FLETCHER
MGMT30 MGMT30
SAMMET
ASSO
DATA
WORK
DBA Utilities (utilitrios)
Exemplo: - Define - Delete Files Gerncia de espao espa relatrios do DB relat
Exemplo: - Load - Unload Data DB restart/recovery
online
Ncleo Adabas
batch
ASSO
DATA
WORK
Interfaces de Programao
Direct calls (e.g. Assembler, COBOL,...) SQL (COBOL, C, PL/1, FORTRAN) Java Natural
Ncleo Adabas
ASSO
DATA
WORK
Interfaces Programao: Direct Calls
Exemplo: COBOL . . . MOVE 1 MOVE 'L3' MOVE 'AE.' MOVE 'FLETCHER MOVE 'AA,AE,10,AC.' CALL 'ADABAS'
TO TO TO TO TO USING
FILE-NUMBER. COMMAND-CODE. SEARCH-BUFFER. VALUE-BUFFER. FORMAT-BUFFER. CONTROL-BLOCK, FORMAT-BUFFER, RECORD-BUFFER, SEARCH-BUFFER, VALUE-BUFFER.
IF RESPONSE-CODE NOT = 0 . . . . . .
Interfaces Programao : SQL
COBOL, C, PL/1, FORTRAN . . . EXEC SQL SELECT PERSONNEL-ID, NAME, FIRST-NAME FROM EMPLOYEES WHERE NAME GE 'FLETCHER' ORDER BY NAME END-EXEC . . . COBOL, C, PL/1, FORTRAN
Interfaces Programao : Java
import [Link].*; import [Link].*; public class ReadEmployees { public class ReadEmployees { public static final void main (String args[]) { public static final void main (String args[]) { [Link] (136,11); [Link] (136,11); Adabas adabas = Adabas adabas = [Link] ([Link],"FLETCHER"); [Link] ([Link],"FLETCHER"); while ([Link]()) { while ([Link]()) { Employees em = (Employees) [Link](); Employees em = (Employees) [Link](); [Link] ( [Link] ( "Personnel-ID: " + [Link] "Personnel-ID: " + [Link] + ", Last name: " + [Link] + ", Last name: " + [Link] + ", First name: " + [Link] ); + ", First name: " + [Link] ); } } } } } }
Interfaces Programao : Natural
READ EMPLOYEES BY NAME STARTING FROM 'FLETCHER' DISPLAY PERSONNEL-ID NAME FIRST-NAME END
Adabas Proteo de Dados
Autorizao:
Read: Update: NAME, ADDRESS, DEPT, SALARY ADDRESS, SALARY
Autorizao:
Read: Update: NAME, ADDRESS ADDRESS
Autorizao:
Read: Update: NAME, ADDRESS, SALARY SALARY but only if DEPT = 'SALE20' and SALARY<80000
Adabas Security
Para arquivos, campos, separados para read/update
EMPLOYEES EVANS FLETCHER SMITH WILSON SALE20 SALE20 SALE20 MGMT30 LOS ALAMOS 34000 DETROIT 26000
criptografando:
Natural Funo e Proteo aos Dados
Autorizao:
Uso do Sistema de Informaes Pessoais, que autoriza acesso de leitura
Autorizao:
Uso do Sistema de Informaes Pessoais sem autorizao para funes de update
Natural Security
Usurios Funes de Processamento Estruturas de Dados
Adabas Security
Access/Update to criptografia - File - Field
Adabas Database
Resumo
Adabas armazena dados de usurios em formato comprimido nos blocos do Data Storage (DATA). Informaes de controle das estruturas do Banco de Dados e dos Dados (Lista Invertida, Address Converter) esto armazenadas no Associator (ASSO). O ncleo do Adabas o processo ativo do Database. O acesso campo-a-campo aos dados no banco de dados, de forma concorrente e otimizada, ocorre via as funes do ncleo. Os usurios acessam o banco de dados via interfaces de programao Natural, Java, SQL (embutidas, ODBC, WWW Gateway) ou via direct calls. Funes de gerenciamento do Database podem ser chamadas via servios online ou utilitrios batch.
4
Adabas Definio de arquivos
A Unidade de Informao
PERSONNELID
FIRSTNAME
NAME
MIDDLENAME
MARSTAT
SEX
BIRTH
20023400 LILLY FLETCHER PHYLLIS S 20023400 LILLY FLETCHER PHYLLIS S
F F
19650422 19650422
Formatos e tamanhos
Formato
Alphanumeric Long Alpha* (A) (LA)
Tamanho do campo
1-253 1-16381 1-29 1-29 1-126 2 or 4 4 or 8 1-253 bytes bytes decimal digits decimal digits bytes bytes bytes bytes
Unpacked decimal (U) Packed decimal Binary Integer Floating Point Wide (P) (B) (F) (G) (W)
* Long Alpha uma opo para formatos alfanumricos e muito grandes
Definio de campos
EMPLOYEES Ty *L Field ID ----------------------PERSONNEL-ID FIRST-NAME NAME MIDDLE-NAME MAR-STAT SEX BIRTH F *A A A A A A U Length -----8.0 20.0 20.0 20.0 1.0 1.0 8.0 D * U * DB -AA AC AE AD AF AG AH S *
Estruturas
FULL-NAME
PERSONNELID FIRSTNAME NAME MIDDLENAME MARSTAT SEX BIRTH
20023400 LILLY FLETCHER PHYLLIS 20023400 LILLY FLETCHER PHYLLIS
Campo Elementar Grupo de campos
S S
F 19700422 F 19700422
LEAVEBOOKED
LEAVESTART LEAVEEND
20030602 20030704 2 20030517 20030521 3 2 20030517 20030521 3
Grupo Peridico
FRE FRE ENG ENG GER GER
Campo Multi-valorado
Definio da Estrutura
Employees Ty *GR L 1 1 2 2 2 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME MAR-STAT . . . LEAVE-BOOKED LEAVE-START LEAVE-END LANG F *A A A A A Length -----8.0 20.0 20.0 20.0 1.0 D * U * DB -AA AB AC AE AD AF S *
PE
MU
1 2 2 1
U U A
8.0 8.0 3.0
AW AX AY AZ
Campos Virtuais
FLETCHER LILLY FLETCHER LILLY
S S
F F
19700422 19700422
NAME-YEAR
BIRTH-YEAR
FLETCHER 1970
Supercampo
1970
Subcampo
Campos Virtuais - Definio
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 1 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME MAR-STAT SEX BIRTH BIRTH-YEAR ---- Source field(s) ---BIRTH F *A Length -----8.0 D * U * DB -AA AB AC AE AD AF AG AH B1 S *
SB
A 20.0 A 20.0 A 20.0 A 1.0 A 1.0 U 8.0 U 4.0 - Start---End-5 8
SP
NAME-YEAR A 24.0 ---- Source field(s) ---- - Start---End-NAME 1 20 BIRTH 5 8
B2
Descritor nico
PERSONNELID FIRSTNAME NAME MIDDLENAME MARSTAT SEX
20023400 LILLY 20023400 LILLY
FLETCHER PHYLLIS FLETCHER PHYLLIS
S S
F F
Lista Invertida PERSONNEL-ID
Lista Invertida NAME
20004000 20010500 20015700 20023400 20023600 20025200 20027200 20030300
1 1 1 1 1 1 1 1
2 3 5 1 6 8 7 4
CLIMENSON CLIMENSON EVANS EVANS FLETCHER FLETCHER SAMMET SAMMET SMITH SMITH
1 1 1 1 2 2 1 1 3 3
3 3 7 7 1, 4 1, 4 5 5 2, 6, 8 2, 6, 8
Descritor nico
Definio de Descritor
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME MAR-STAT SEX F *A A A A A A Length -----8.0 20.0 20.0 20.0 1.0 1.0 D * D U * U DB -AA AB AC AE AD AF AG S *
Campos Multi-Valorados como Descritores
Lista Invertida LANG
LANG
ENG ENG GER GER
ICE ICE JAP 2 1, 8 JAP 2 1, 8 RUS 1 1 RUS 1 1
8 1, 2, 3, 4, 5, 6, 7, 8 8 1, 2, 3, 4, 5, 6, 7, 8 1 8 1 8 2 1, 8 2 1, 8
20055000 LILLY 20055000 LILLY
4 4
RUS RUS JAP JAP ICE ICE ENG ENG
Grupo Peridico como Descritor
20900 5 1 7 20900 5 1 7 21200 5 1 4 21200 5 1 4 22400 4 2 4, 7 22400 4 2 4, 7 22800 5 1 2 22800 5 1 2 23200 3 1 7 23200 3 1 7 23900 23900 23900 23900 24700 24700 25700 25700 3 3 5 5 2 2 2 2 1 1 1 1 1 1 1 1 4 4 2 2 7 7 4 4
4
CURRENCY SALARY
USD 21200 USD 21200 USD 22400 USD 22400 USD 23900 USD 23900 USD 25700 USD 25700 5 USD 28000 5 USD 28000
20030300 GILBERT 20030300 GILBERT
28000 1 1 4 28000 1 1 4
ndice do PE
* A extenso do valor do DE atravs do ndice do PE pode ser desabilitada usando a opo XI (excluir ndice).
Subdescritor e Superdescritor
LEAVEDATA PERSONNELID FIRSTNAME LEAVEDUE LEAVETAKEN NAME DEPT
20023400 LILLY FLETCHER 20023400 LILLY FLETCHER
Definio do Superdescritor
34 34
08 08
MGMT10 MGMT10
Definio do Subdescritor
DEPT-PERSON MGMT10FLETCHER MGMT10FLETCHER MGMT30SMITH MGMT30SMITH SALE20EVANS SALE20EVANS SALE20SMITH SALE20SMITH TECH10FLETCHER TECH10FLETCHER TECH10SAMMET TECH10SAMMET Superdescritor
1 1 1 1 1 1 1 1 8 8 7 7
DEPARTMENT
MGMT30CLIMENSON 1 3 MGMT30CLIMENSON 1 3
MGMT 3 1, 3, 8 MGMT 3 1, 3, 8 SALE 3 2, 6, 7 SALE 3 2, 6, 7 TECH 2 4, 5 TECH 2 4, 5
Subdescritor
2 2, 6 2 2, 6 1 4 1 4 1 5 1 5
Superdescritor / Subdescritor - Definio
EMPLOYEES Ty *GR L 1 1 2 2 2 1 2 2 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME LEAVE-DATA LEAVE-DUE LEAVE-TAKEN DEPARTMENT ---- Source field(s) ---DEPT F *A A A A Length D ------ * 8.0 D 20.0 20.0 20.0 U * U DB -AA AB AC AE AD A3 AU AV S1 S *
GR
SB
U 2.0 U 2.0 A 4.0 D - Start---End-1 4
SP
DEPT-PERSON A 26.0 D ---- Source field(s) ---- - Start---End-DEPT 1 6 NAME 1 20
S2
Descriptor Fontico e Hiperdescritor
LEAVEDATA PERSONNELID FIRSTNAME LEAVEDUE LEAVETAKEN NAME DEPT
20023400 LILLY FLETCHER 20023400 LILLY FLETCHER
34 34
08 08
MGMT10 MGMT10
Algoritmo de fonetizao
Algoritmo definido pelo DBA
LEAVE-LEFT
9 9
PHONETIC-NAME
1 4 1 4
10 1 2 10 1 2 "CLIMENSON" "CLIMENSON" "EVANS" "EVANS" "FLETCHER" "FLETCHER" "SMITH" "SMITH" 1 1 3 3 3 3 7 7
Descritor Fontico Hiperdescritor
13 1 13 1
5 5
18 1 8 18 1 8 21 2 3, 7 21 2 3, 7 26 1 1 26 1 1 31 1 6 31 1 6
2 1, 4 2 1, 4 4 2, 5, 6, 8 4 2, 5, 6, 8
Fontico / Hiperdescritor - Definio
EMPLOYEES Ty *GR L 1 1 2 2 2 1 2 2 1 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME LEAVE-DATA LEAVE-DUE LEAVE-TAKEN DEPT PHONETIC-NAME ---- Source field(s) ---NAME F *A A A A U U A A Length -----8.0 20.0 20.0 20.0 2.0 2.0 6.0 20.0 D * D U * U DB -AA AB AC AE AD A3 AU AV AO PH S *
GR
PH
D D
HY
LEAVE-TAKEN B ---- Source field(s) ---LEAVE-DUE LEAVE-TAKEN
4.0
H1
Compresso Como funciona
PERSONNELID FIRSTNAME NAME MIDDLENAME MARSTAT SEX BIRTH
20023400 LILLY FLETCHER 20023400 LILLY FLETCHER
F F
00000000 00000000
Compresso
0001 L 20023400 L LILLY L FLETCHER C 0001 L 20023400 L LILLY L FLETCHER 1
F L 0 F L 0
Definio da Compresso
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 1 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME MAR-STAT SEX BIRTH F *A A A A A A U Length -----8.0 20.0 20.0 20.0 1.0 1.0 8.0 D * D U * U DB -AA AB AC AE AD AF AG AH S *
N N F F
Supresso de Valores Nulos para campos MU
RUS RUS JAP JAP ICE ICE 4 ENG 4 ENG
20055000 LILLY FLETCHER 20055000 LILLY FLETCHER
Modify LANG (2) = ' ' Sem NU
Com NU
RUS RUS JAP JAP 4 ENG 4 ENG
RUS RUS JAP JAP 3 ENG 3 ENG
Supresso de Valores Nulos para Descritores
PERSONNELID FIRSTNAME NAME SALARY
3 4 5
20025200 20025200 20010500 20010500 20030300
MARK MARK JENNY JENNY GILBERT
SMITH CLIMENSON FLETCHER
30000 0 0
Lista Invertida SALARY
Sem NU Com NU
2 3, 4 3, 4 26000 2 2, 7 2, 7 30000 1 2 30000 1 2
26000 26000 30000 30000
2 2 1 1
7 7 2 2
Consideraes de Desenho
Nmero de campos e repetio de campos
Estrutura clara Utilizao de espao Velocidade de acesso
Seqncia de campos
Utilizao de espao Velocidade de acesso
Definio de Descritores
Flexibilidade de acesso Velocidade de acesso Utilizao de espao Efeito sobre a performance
Criando um arquivo
DBA
Definio no Predict Definio no Predict
Definio de campos via Utilitrios
Adabas Adabas Online Online Services Services
FNDEF='01, AA, 8, A, DE, UQ' FNDEF='01, AA, 8, A, DE, UQ' FNDEF='01, AB' FNDEF='01, AB' FNDEF='02, AC, 20, A, NU' FNDEF='02, AC, 20, A, NU'
Arquivo de entrada
:: ::
Utilitrio batch
ASSO
Arquivo Employees Descrio de campos Descri
DATA
Arquivo Employees
Lista Invertida Address Converter
Viso dos Dados (User Views)
Program Program Program Program
User Views
Addresses
First-name First-name Name Name Street Street House number House number Zip Zip City City
Salaries
Personnel-ID Personnel-ID Full-Name Full-Name First-name First-name Salary Salary Bonuses Bonuses Number of Number of children children
Times of absence
Personnel-ID Personnel-ID Department Department Birth-date Birth-date Leave Leave Days of illness Days of illness
ASSO
Arquivo Employees Descr. Dos campos
DATA
Arquivo Employees Dados
Definio de arquivo Adabas
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 1 1 2 2 2 2 1 2 2 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME NAME MIDDLE-NAME MAR-STAT SEX BIRTH ADDRESS ADDRESS-LINES CITY ZIP COUNTRY TELEPHONE AREA-CODE PHONE F *A A A A A A U A A A A A A Length -----8.0 20.0 20.0 20.0 1.0 1.0 8.0 20.0 20.0 10.0 3.0 6.0 15.0 D * D U * U DB -AA AB AC AE AD AF AG AH A1 AI AJ AK AL A2 AN AM S *
N N F F
D D D
GR MU
N N N N N N
GR
Exemplo de uma User View
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 2 2 Field ID ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME INITIALS NAME MIDDLE-NAME TELEPHONE AREA-CODE PHONE F *A A A A A A A Length -----8.0 20.0 1.0 20.0 20.0 6.0 15.0 D * D U * U DB -AA AB AC AD AE AD A2 AN AM S *
N N N N N
GR
Usando User Views
Program XY Program XY User View 'Salaries' User View 'Salaries' PREDICT Descrio dos dados User View 'Salaries' User View 'Salaries' Data definition Data definition Compilao do Programa Referncia ativa Program XY Program XY uses User View uses User View 'Salaries' with fields ...... 'Salaries' with fields
Programa Programa Executvel Executvel
Relacionamento Employees-Vehicles
20015700 WILLY SAMMET 20015700 WILLY SAMMET
30952839 30952839
GENERAL MOTORS
PONTIAC PONTIAC
20030300 GILBERT FLETCHER 20030300 GILBERT FLETCHER
30938325 30938325
FORD FORD
LINCOLN LINCOLN
Relacionamento 1 : n
Variante 1 Dois arquivos
EMPLOYEES
VEHICLES
1 5
20015700 WILLY 20015700 WILLY
SAMMET
5 6 7
20015700 20015700 20030300 20030300
30952839 30952839 30936004 30938325
20030300 GILBERT FLETCHER
GENERAL MOTORS MERCEDES BENZ FORD
Variante 1 - User Views
Ty *GR L 1 1 2 2 2 1 1 1 1 EMPLOYEES Name F ----------------------*PERSONNEL-ID A FULL-NAME FIRST-NAME A INITIALS A NAME A MIDDLE-NAME A MAR-STAT A SEX A BIRTH U VEHICLES Name F ----------------------*REG-NUM A CHASSIS-NUM I PERSONNEL-ID A CAR-DETAILS MAKE A MODEL A COLOR A Length -----8.0 20.0 1.0 20.0 20.0 1.0 1.0 8.0 D * D U * U DB -AA AB AC AD AE AD AF AG AH S * N N N F F
Ty *-
GR
L 1 1 1 1 2 2 2
Length -----15.0 4.0 8.0 20.0 20.0 10.0
D * D D D D
U * U
DB -AA AB AC AD AE AF AG
S * N F N N N
Variante 2 - Grupo Peridico
20015700 WILLY SAMMET 20015700 WILLY SAMMET
30952839 30952839
GENERAL MOTORS
PONTIAC PONTIAC
30938325 30938325
20030300 GILBERT FLETCHER 20030300 GILBERT FLETCHER
30936004 30936004
FORD LINCOLN FORD LINCOLN MERCEDES MERCEDES 280SE 280SE BENZ BENZ
Variante 2 Definio de arquivo
EMPLOYEES Ty *GR GR L 1 1 2 3 3 3 Field ID ----------------------PERSONNEL-ID PERSONNEL-DATA FULL-NAME FIRST-NAME NAME MIDDLE-NAME . . . CAR-DETAILS REG-NUM CHASSIS-NUM MAKE F *A A A A Length -----8.0 20.0 20.0 20.0 D * D U * U DB -AA G1 AB AC AE AD S *
N N
PE
1 2 2 2
A I A
15.0 4.0 20.0
D D
G2 BA BB BC
N F N
Variante 3 Arquivo com dois tipos de registros
EMPLOYEES-VEHICLES
1 2 3 4 5
20015700
WILLY
SAMMET
20015700 30952839 GENERAL MOTORS
20030300 GILBERT FLETCHER
20030300 20030300 30396004 30938325 MERCEDES BENZ FORD
Variante 3 - User Views
EMPLOYEES Ty *GR L 1 1 2 2 2 1 1 1 1 Name ----------------------PERSONNEL-ID FULL-NAME FIRST-NAME INITIALS NAME MIDDLE-NAME MAR-STAT SEX BIRTH F *A A A A A A A U Length -----8.0 20.0 1.0 20.0 20.0 1.0 1.0 8.0 D * D U * U DB -AA AB AC AD AE AD AF AG AH S * N N N N N N N N
VEHICLES Ty *L 1 1 1 1 2 2 2 Name ----------------------REG-NUM CHASSIS-NUM PERSONNEL-ID CAR-DETAILS MAKE MODEL COLOR F *A I A A A A Length -----15.0 4.0 8.0 20.0 20.0 10.0 D * D D D D U * U DB -FA FB FC FD FE FF FG S * N F N N N N
GR
Resumo
Um campo uma unidade lgica de informao dentro de um registro de dados Adabas. Adabas suporta campos elementares, grupos de campos, campos multi-valorados, grupos peridicos, sub- e super- campos, os quais, dependendo do tipo e opes do campo, so armazenados em formato comprimido no Data Storage. Descritores permitem acesso eficiente. Adabas suporta descritores normais, descritores fonticos, sub-, super- e hyperdescriptors, os quais podem opcionalmente serem definidos com a opo unique. O acesso ao Adabas campo-orientado. Por esta razo, as vises de usurio podem ser definidas para um arquivo, as quais implementam clareza e aprimoram as possibilidades do desenho.
5
Adabas Lgica de Acesso
Tipos de Acesso
Leitura L campos do registro de dados Processamento em seqncia fsica em seqncia de ISN em seqncia lgica L valores dos descritores na lista invertida Pesquisa seleo por ISN Pesquisa por um critrio ou pesquisa complexa Classificada por 1 at 3 descritores
Leitura em seqncia fsica
Data Storage
4312 4313 4314 4315
1 3 2 4
FLETCHER CLIMENSON SMITH FLETCHER
5 7 8 6
SAMMET EVANS SMITH SMITH
Leitura em seqncia fsica Procedimento Ncleo Adabas
WORK
ASSOCIATOR
Programa de Programa de Aplicao Aplicao
I/O Buffer
Lista invertida Address Converter
Leitura fsica
DATA STORAGE
Dados
Valores devolvidos
Leitura por ISN
Address Converter
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312 4315 4315 4313 4313 4314 4314
Data Storage
4312 4313 4314 4315
1 3 2 4
FLETCHER CLIMENSON SMITH FLETCHER
5 7 8 6
SAMMET EVANS SMITH SMITH
Leitura por ISN - Procedimento
Ncleo Adabas
WORK
ASSOCIATOR
Programa de Programa de Aplicao Aplicao
I/O Buffer
Lista invertida Address Converter
Leitura por ISN
DATA STORAGE
Dados
Valores devolvidos
Leitura por Seqncia Lgica
Lista Invertida NAME
CLIMENSON 1 EVANS FLETCHER SAMMET SMITH 1 2 1 3 3 7 1, 4 5 2, 6, 8
Address Converter
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312 4315 4315 4313 4313 4314 4314
Data Storage
4312 4313 4314 4315
1 3 2 4
FLETCHER CLIMENSON SMITH FLETCHER
5 7 8 6
SAMMET EVANS SMITH SMITH
Leitura por Seqncia Lgica Procedimento Ncleo Adabas
WORK
Programa de Programa de Aplicao Aplicao I/O Buffer Leitura Lgica
ASSOCIATOR
Lista invertida Address Converter
DATA STORAGE
Valores devolvidos
Dados
Lendo da Lista Invertida - Histograma
Lista Invertida NAME
CLIMENSON EVANS FLETCHER SAMMET SMITH SMITH
1 1 1 1 2 2 1 1 3 3
3 3 7 7 1, 4 1, 4 5 5 2, 6, 8 2, 6, 8
Histograma - Procedimento
Ncleo Adabas
WORK
ASSOCIATOR
Programa de Programa de Aplicao Aplicao
I/O Buffer
Lista invertida Address Converter
Histograma Retorna a quantidade e valores dos descritores
DATA STORAGE
Dados
Pesquisa Seleo no Database
Uma lista de registros criada (na forma de ISNs) os quais atendem ao critrio de pesquisa especificado. A lista de ISN classificada por - ISN (por default) - 1 at 3 descritores em ordem ascendente ou descendente. O nmero de registros encontrado devolvido.
Pesquisa usando Descritores
Seleo por ISN dos empregados que trabalham no departamento "SALE20" e nascidos antes de 1960
Lista invertida DEPT MGMT10 2 1 MGMT10 2 1 MGMT40 2 3, 8 MGMT40 2 3, 8 SALE 20 3 2, 6, 7 SALE 20 3 2, 6, 7 TECH10 2 4, 5 TECH10 2 4, 5 Lista invertida BIRTH 19500101 1 19500101 1 19560224 1 19560224 1 19570709 1 19570709 1 19611222 1 19611222 1 19650422 1 19650422 1 19671113 1 19671113 1 Quantidade: 2 19720905 1 19720905 1 2 2 6 6 19740219 1 19740219 1 2 2 4 4 6 6 7 7 1 1 3 3 8 8 5 5
Lista de ISN Resultante
Pesquisa usando Descritores Procedimento Ncleo Adabas
Lista de ISNs selecionados
WORK
ASSOCIATOR
Programa de Programa de Aplicao Aplicao
I/O Buffer
Lista invertida Address Converter
Pesquisa Quantidade de ISN devolvidos
DATA STORAGE
Dados
Pesquisa usando No-Descritores
Pesquisa por ISN para empregados femininos no departamento "MGMT30"
Lista invertida DEPT
MGMT10 2 1 MGMT10 2 1 MGMT30 2 3, 8 MGMT30 2 3, 8 SALE20 3 2, 6, 7 SALE20 3 2, 6, 7 TECH10 TECH10 2 4, 5 2 4, 5
Address Converter
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312
Data Storage
4312 4313 4314 4315
1 3 2 4
FLETCHER F CLIMENSON F SMITH M FLETCHER M
5 SAMMET M 7 8 6
EVANS M SMITH M SMITH M
3 3 8 8
4315 4315
ISN resultantes Intermedirios
4313 4313 4314 4314
Quantidade: 1
3 3 Lista de ISN Resultante
Pesquisa usando No-Descritores Procedimento
Ncleo Adabas
Lista de ISNs selecionados WORK
Programa de Programa de Aplicao Aplicao I/O Buffer Pesquisa Quantidade de ISN
ASSOCIATOR
Lista invertida Address Converter
DATA STORAGE
Dados
Processando os ISNs selecionados
Quantidade: 2 2 2 6 6
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312 4315 4315 4313 4313 4314 4314
4312 4313 4314 4315
1 3 2 4
FLETCHER CLIMENSON SMITH SMITH
5 SAMMET 7 EVANS 8 SMITH 6 FLETCHER
Lendo campos dos Registros Selecionados
Ncleo Adabas Programa de Programa de Aplicao Aplicao
Lista de ISNs selecionados WORK
Pesquisa
ASSOCIATOR
Lista invertida Address Converter
Leitura
I/O Buffer
Devolve valores dos campos dos registros selecionados
DATA STORAGE
Dados
Agrupando arquivos
Seleo por ISN dos empregados trabalhando no departamento "MGMT30 e que possuem carros General Motors. Agrupa-se Employees e Vehicles via campo personnel-ID.
EMPLOYEES
Lista invertida DEPT MGMT10 2 1 MGMT10 2 1 MGMT30 2 3, 8 MGMT30 2 3, 8 SALE20 SALE20 TECH10 TECH10 3 2, 6, 7 3 2, 6, 7 2 4, 5 2 4, 5
VEHICLES
Lista invertida MAKE FORD GENERAL MOTORS MERCEDES-BENZ TOYOTA TOYOTA Data Storage 2 3 5 6 8 7 4 1
1 1 1 1 2 2, 5 2 2, 5 1 4 1 4 1 3 1 3
Lista invertida PERSONNEL-ID 20000400 1 20010500 1 1 20015700 1 20023600 1 20025200 20027200 1 20030300 1 20055000 1
1 20000400FORD 2 20010500GENERAL MOTORS 3 20055000TOYOTA 4 20030300MERCEDES-BENZ 5 20015700GENERAL MOTORS
Quantidade: 1
3 Lista de ISN resultante 3
Agrupamento Lgico de arquivos
Seleo por ISN dos empregados trabalhando no departamento "MGMT30 e que possuem carros General Motors. Agrupa-se Employees e Vehicles via campo personnel-ID.
Seleo de ISN dos empregados no departamento "MGMT30" Leitura pelo personnel-ID do primeiro empregado (ISN 3) Seleo do ISN do arquivo vehicles com o personnel ID do empregado e fabricante "General Motors" Leitura do personnel-ID do segundo empregado (ISN 8) Seleo do ISN do arquivo vehicles com o personnel-ID do empregado e fabricante "General Motors"
Resumo
Comandos Read fornecem valores de campos de registros de um arquivo Adabas em seqncia fsica, por ISN, ou seqncia lgica dos registros de dados, ou eles fornecem valores de descritores numa lista invertida (histograma). Comandos de pesquisa selecionam todos os ISNs de um arquivo Adabas cujos registros atendam critrios de pesquisa simples ou complexos, classificados por ISN, ou por 1 at 3 descritores em ordem ascendente ou descendente. O recurso de Agrupamento de Arquivos Adabas, ou Agrupamento lgico de arquivos pode ser usado para associar dados de diversos arquivos relacionados.
6
Database - Modificaes, Restart & Recovery
Modificaes no Database
Adicionando um novo registro de dados com valores de campo Assinalamento de ISN pelo Adabas ou pelo usurio Modificando campos em um registro existente Excluindo um registro existente
Modificaes no Database
Ncleo Adabas
WORK
Programa de Programa de Aplicao Aplicao I/O Buffer
ASSOCIATOR
Lista invertida Address Converter
DATA STORAGE
Dados
Estudo de Caso
Um empregado foi escalado para cinco dias de frias. Uma atividade importante interferiu e o empregado cancelou suas frias. Dois dias depois, o empregado solicitou 15 dias de frias. Os dois formulrios de frias so processados por duas pessoas que trabalham no departamento, ao mesmo tempo.
Estudo de Caso
Cancelado 5 dias Agendado 15 days
Read employee dias de ausncia = 5
Read employee dias de ausncia = 15
Modificao no empregado novo dias de ausncia = 0
Modificao no empregado novo dias de ausncia = 20
HOLD (Reteno)
Cancelado 5 dias Agendado 15 dias
Read employee with HOLD dias de ausncia = 5
Read employee with HOLD
Modificao no empregado novo dias de ausncia = 0
Conceito de Transao
O personnel-ID de um empregado deve ser modificado de 20023400 para 20055000. O empregado com o personnel-ID 20010500 deve ser excludo.
Que efeito estas mudanas produzem no veculo do empregado?
Transao
Uma transao uma seqncia de comandos de alteraes na base de dados, as quais produzem uma consistncia lgica na unidade de informao que ser, depois, transformada em outra consistncia lgica da unidade de informao. Uma transao sempre deve ser executada em sua totalidade ou em parte nenhuma (princpio do Tudo-ou-Nada) Uma transao comea com o primeiro acesso que causa um estado de HOLD. Ao final da transao, todos os registros postos em estado de HOLD so liberados.
Fim da transao
Update Personnel-ID
WORK
Read employee com HOLD Change employee Read vehicles com HOLD Change vehicles Fim da Transao
Armazena informaes das modificaes
Transo lgica
Desfazendo uma Transao
Delete Employee
Read employee com HOLD Delete employee
WORK
B a c k o u t
Read vehicle com HOLD Delete vehicle Read vehicle com HOLD Change vehicle Backout Transaction
Armazena informaes das modificaes
Limite de Tempo de Transao
Delete Employee
Read employee com HOLD Read employee com HOLD Delete employee
B a c k o u t
Reincio Automtico
Delete Employee
WORK
Read employee com HOLD
B a c k o u t
Armazena informaes das modificaes
Delete employee
Reincio de Programa
Usurio XY WORK
ET ltima atividade foi cancelamento da ausncia para empregado 20023400'
Armazena informaes das modificaes Adabas System File
Usurio XY: 'Cancela ausncia para empregado 20023400
B a c k o u t
Read employee com HOLD
Delete employee
Read ET data ltima atividade foi...'
Gerenciamento pelo Usurio
Tipo de Usurio Uso de ET data Parmetros especficos de usurio
OPEN (logon para o Adabas)
CLOSE (logoff do Adabas)
Tipos de Usurios
ACC user UPD user (ET logic user) EXU user EXF user UTI user
Database Backup / Recuperao
DBA
Read employee com HOLD
Backup do Database
Delete employee
Read vehicle com HOLD
Protection Log File Armazena informaes das modificaes
Change vehicle
Resumo
Um arquivo Adabas pode ser modificado via funes de adio" e excluso" de registros de dados, e por modificao de valores de campos de um registro de dados existente. Alteraes concorrentes pelos diversos usurios so serializadas por meio da lgica de "hold". Alteraes associadas de um usurio so executadas em uma transao lgica. Para modificaes, o Adabas permite acesso concorrente de diversos usurios ou acesso exclusivo de um usurio. Opes especiais podem ser configuradas com o comando OP. As informaes de alteraes no arquivo WORK permitem um reincio automtico aps uma falha do sistema. Na ocorrncia de danos num disco, o database pode ser recuperado usando-se uma cpia backup ou o protection log.