Curso Adabas Fundamentals

120
Adabas - Fundamentos TRA001-44E

Transcript of Curso Adabas Fundamentals

Page 1: Curso Adabas Fundamentals

Adabas - FundamentosTRA001-44E

Page 2: Curso Adabas Fundamentals

Conteúdo

Capítulo 11 Informação e Comunicação

Capítulo 22 Fundamentos de Banco de Dados

Capítulo 33 Adabas - Arquitetura

Capítulo 44 Adabas - Definição de Arquivo

Capítulo 55 Adabas - Lógica de Acesso

Capítulo 66 Database - Modificações, Reinício &Recuperação

Page 3: Curso Adabas Fundamentals

Software AG

Headquarters: DarmstadtWorldwide representation

Branch offices of SAG Systemhaus GmbH:

Darmstadt BerlinHamburg HannoverDusseldorf NurembergMunich Stuttgart

Page 4: Curso Adabas Fundamentals

Software AG - Vendas

Customers in:Financial Services

Public Administration

Industry and Pharmaceutical Industry

Trade, Logistics, Media, Telecommunication0

100

200

300

400

500

600

1998 1999 2000 2001

Vendas(million €)

Page 5: Curso Adabas Fundamentals

1

Informação e Comunicação

Page 6: Curso Adabas Fundamentals

Informação na Empresa

Recursos HumanosContabilidade Marketing / Vendas

AngebotAngebot

Compras Desenvolvimento/Produção Estoque / Expedição

Page 7: Curso Adabas Fundamentals

Atividade OperacionalGerenciamento

Contabilidade Recursos Humanos Marketing / Vendas

AngebotAngebot

Compras Desenvolvimento/Produção Estoque/Expedição

Recebimento de pagamentosMemorandos

PagamentosSistema de vagas

Catálogo de produtosPreço de vendas

Novas comprasCompras para produção

Conta de materiaisUtilização de equipamentos

InventárioOrdem de expedição

Page 8: Curso Adabas Fundamentals

Apoio da TI para tarefas Operacionais

Aplicações

Desenvolv. de Aplicações Ferramentas de planejamento

DocumentaçãoAmbiente de Programação Sistema de TI

Operational

Database Comum

Page 9: Curso Adabas Fundamentals

Tarefas OrganizacionaisGerenciamento

Estatísticas / Previsões

Recursos Humanos Marketing / Vendas

AngebotAngebot

Estoque/Expedição

Contabilidade

Compras Desenvolvimento/Produção

Planejamento da Produção

Credibilidade Financeira de clientes

Informações em artigosDados de produção

Panorama de funcionários por vários critérios

Estatísticas de vendasVisão geral de clientesAnálise de mercado

Visão Geral de fornecedores por vários critérios

Page 10: Curso Adabas Fundamentals

Apoio da TI para tarefas Organizacionais

Sistema de TI Operacional

Estatísticas Individuais

Database Comum

Page 11: Curso Adabas Fundamentals

Comunicação: instrumento para Atividade

AngebotAngebot

BankingServiços Online

ClientesParcerias Comerciais

Comércio/ Usuários finais

Fornecedores

DBs – Pesquisa DBs - patentes

Serviços Contábeis

Page 12: Curso Adabas Fundamentals

Processamento de Informações Integradas

1. Qrtl.2. Qrtl.3. Qrtl.4. Qrtl.

EDI,XML

WAN

Internet

Fax

Intranet

Database Comum

Page 13: Curso Adabas Fundamentals

Resumo

As atividades operacionais e organizacionais das empresas são amparadas por Sistemas de Informação.Sistemas de Informações modernos integram funções das aplicações operacionais, processamento de informações individuais e tecnologias de comunicação diretamente no local de trabalho dos usuários. Todos os sistemas podem acessar os dados corrente usando um Database comum. Com seus produtos e serviços, a Software AG é seu parceiro profissional e eficiente para planejar e implementar modernos Sistemas de Informação.

Page 14: Curso Adabas Fundamentals

2

Fundamentos de Bancos de Dados

Page 15: Curso Adabas Fundamentals

Sistemas de Arquivos

Batch Online Aplicações PC / Web

TransferSortMerge

Page 16: Curso Adabas Fundamentals

Banco de Dados

Batch Online Aplicações PC / Web

DatabaseDatabase

Page 17: Curso Adabas Fundamentals

Database / Desenho de Databases

Desenho do Database

Requisitos de informações

Requisitos de Informações

Aplicações Aplicações

DBMS

Visão Externa

Visão Interna

DadosDados

Page 18: Curso Adabas Fundamentals

Análise de DadosDepartamento

Funcionários(Vendedores)Carro

PedidosArtigos Clientes

Faturas

possui

dirigem

envolvem fazem

Faturam

assinam

Page 19: Curso Adabas Fundamentals

Modelo de Dados Hierárquico

Departamento

Funcionários

Carros Pedidos

ArtigosClientes Faturas

Page 20: Curso Adabas Fundamentals

Modelo de Dados em Rede

Departamento

Funcionários

Carros Pedidos

Artigos

Clientes

Faturas

Page 21: Curso Adabas Fundamentals

Modelo de Dados Relacional

DepartamentoDepartmentID

Funcionário DepartmentID

PersonnelID ClienteCustomer

ID

Carro PersonnelID Pedido Personnel

IDCustomer

IDOrder

ID

Fatura OrderID

Artigo OrderID

ArticleID

ArtigoArticleID

Page 22: Curso Adabas Fundamentals

Administração de DatabasesUsuário

Administrador de Dados

Administrador do Database

Requisitos da Aplicação

Desenho de Dados

Organização dos Dados

Performance,Gerência de espaçoDesenho do Database InstalaçãoBackupsRecuperaçãoOrganização Operacional

Dicionário de Dados

Utilitários

DatabaseDatabase

Page 23: Curso Adabas Fundamentals

Resumo

O uso de um Banco de Dados reduz a redundância de dados, aumenta a flexibilidade, permite acessos paralelos a partir de diferentes ambientes e modificações concorrentes através de diferentes usuários.O DBMS reconhece a estrutura interna de armazenamento do Database (visão interna) e prepara os dados em sintonia com as necessidades da aplicação (visão externa).Durante os processos de desenho dos Dados e do Database, o dado é transformado. Isso permite o máximo de flexibilidade para a aplicação e melhor exploração das características físicas do sistema de Banco de Dados.A Administração de Dados e de Databases são funções importantes para a organização e operação técnica de um sistema de Banco de Dados.

Page 24: Curso Adabas Fundamentals

3

Adabas - Arquitetura

Page 25: Curso Adabas Fundamentals

Com-plete, TSO, CICS,IMS/TM, TIAM, UTM,

Batch

ENTIRENET-WORK ODBC Internet

Intranet

Plataformas

AdaptableDAtaBAse

System

OS/390, z/OSVSEVM/CMSBS2000

OS/400UnixLinuxOpenVMSWindows

Page 26: Curso Adabas Fundamentals

Database - Componentes

ASSO

DATA

WORK

Dados de Usuário

Informações de Controle - Database- User data

Dados operacionais temporários

Data StorageAssociator

Work Dataset

Page 27: Curso Adabas Fundamentals

Data Storage

ASSO

DATA

Dados de usuário

WORK

Data Storage: System File do Database

Page 28: Curso Adabas Fundamentals

Dados no Banco de DadosDATA

EMPLOYEES

VEHICLES

1 FLETCHER LILLY2 SMITH MARK3 CLIMENSON JENNY4 FLETCHER GILBERT5 SAMMET WILLY

File Coleção de registros de dadosIntervalo de blocos

Registro Seqüência de camposISN Internal Sequence Number

Número único identificador de registro em um arquivo

Page 29: Curso Adabas Fundamentals

Conceito de Campo (Field)

EMPLOYEES

1 20023400 FLETCHER LILLY MGMT102 20000400 SMITH MARK SALE20

ISN PERSONNEL-ID NAME FIRST-NAME DEPT

Page 30: Curso Adabas Fundamentals

Compressão

Registro de dados original

CompressãoCompressão

Registro comprimido

20023400 FLETCHER LILLY MGMT10

20023400 FLETCHER LILLY MGMT10

Page 31: Curso Adabas Fundamentals

Compressão / Estrutura de Bloco

CompressãoCompressão

ISN

Registro comprimido

Bloco físico

Page 32: Curso Adabas Fundamentals

Espaço de Padding (expansão)Bloco físico

Bloco físico

ISN 20023400 FLETCHER LILLY

ISN 20023400 FLETCHEROKE LILLY

Page 33: Curso Adabas Fundamentals

DATA

EMPLOYEES

VEHICLES

EMPLOYEES(2nd Extent)

Alocação de extensões (Extents)

Extensão automática para os dados existentes

Page 34: Curso Adabas Fundamentals

O Associator

ASSO

WORK

Informações de controle- Database- User data

Associator

DATA

Associator: System File do Database

Page 35: Curso Adabas Fundamentals

Conceito de DescritorAssociator

NAMEFLETCHER

Data Storage

EMPLOYEES

1 20023400 LILLY MGMT10

ISN PERSONNEL-ID NAME FIRST-NAME DEPT

FLETCHERFLETCHER

Page 36: Curso Adabas Fundamentals

Lista Invertida

Lista Invertida por DescritorNAME

EMPLOYEESISN NAME

CLIMENSON 1 33EVANS 1 77FLETCHER 2 1, 41, 4SAMMET 1 55SMITH 3 2, 6, 82, 6, 8

1122334455667788

FLETCHERSMITHCLIMENSON

FLETCHERSAMMETSMITHEVANSSMITH

Índice para cada descritor

Page 37: Curso Adabas Fundamentals

Address Converter (Conversor de endereços)

DATA

4312

4313

4314

4315

ASSO

Lista Invertida NAME

43124314431343154312431543134314

AddressConverter

FLETCHER SAMMET11 55

CLIMENSON EVANS33 77

SMITH SMITH22 88

FLETCHER SMITH44 66

CLIMENSON 1 33EVANS 1 77FLETCHER 2 1, 41, 4SAMMET 1 55SMITH 3 2, 6, 82, 6, 8

Conexão lógica entre a Lista Invertida e os Registros de dados

Page 38: Curso Adabas Fundamentals

Núcleo do Adabas

onlinebatch

Módulo de Comunicação

Utility

Módulo de Comunicação

ASSO DATA WORK

Módulo de Comunicação

NúcleoAdabas

Acessos ParalelosAlterações concorrentesProcessamento otimizado

Page 39: Curso Adabas Fundamentals

ASSO DATA WORK

Núcleo Adabas

I/O Buffer

Reademployee

FLETCHER

Reademployee

FLETCHER

Buffer Pool

43124312431443144313431343154315FLETCHERFLETCHER

4312 FLETCHERFLETCHER SAMMETSAMMET1 5

22 1, 41, 4

Page 40: Curso Adabas Fundamentals

Processamento campo-a-campoRead employee

FLETCHERDisplay Name and Dept

4312

ASSO DATA WORK

Núcleo Adabas

FLETCHERFLETCHER MGMT30MGMT30

I/O Buffer1 FLETCHERFLETCHER MGMT30MGMT30 5 SAMMET

Page 41: Curso Adabas Fundamentals

DBA Utilities (utilitários)Exemplo:-- DefineDefine-- DeleteDeleteFilesFilesGerência de espaGerência de espaççoorelatrelatóórios do DBrios do DB

Núcleo Adabas

Exemplo:- Load- UnloadDataDB restart/recovery

online batch

ASSO DATA WORK

Page 42: Curso Adabas Fundamentals

Interfaces de Programação

Núcleo Adabas

Direct calls(e.g.

Assembler, COBOL,...)

SQL(COBOL, C,

PL/1, FORTRAN)

Natural

ASSO DATA WORK

Java

Page 43: Curso Adabas Fundamentals

Interfaces Programação: Direct CallsExemplo: COBOL

MOVE 1 TO FILE-NUMBER.MOVE 'L3' TO COMMAND-CODE.MOVE 'AE.' TO SEARCH-BUFFER.MOVE 'FLETCHER TO VALUE-BUFFER.MOVE 'AA,AE,10,AC.' TO FORMAT-BUFFER.CALL 'ADABAS' USING CONTROL-BLOCK,

FORMAT-BUFFER,RECORD-BUFFER,SEARCH-BUFFER,VALUE-BUFFER.

IF RESPONSE-CODE NOT = 0 . . ....

...

Page 44: Curso Adabas Fundamentals

Interfaces Programação : SQL

COBOL, C, PL/1, FORTRAN

EXEC SQLSELECT PERSONNEL-ID, NAME, FIRST-NAMEFROM EMPLOYEESWHERE NAME GE 'FLETCHER'ORDER BY NAME

END-EXEC

COBOL, C, PL/1, FORTRAN

...

...

Page 45: Curso Adabas Fundamentals

Interfaces Programação : Java

import com.softwareag.jadabas.*;public class ReadEmployees {public static final void main (String args[]) {Employees.setFNR (136,11);

Adabas adabas =Employees.readFrom (Employees.NAME,"FLETCHER");

while (adabas.hasMoreElements()) {Employees em = (Employees) adabas.nextElement();

System.out.println ("Personnel-ID: " + em.personnelID + ", Last name: " + em.lastname+ ", First name: " + em.firstname );}

}}

import com.softwareag.jadabas.*;public class ReadEmployees {public static final void main (String args[]) {Employees.setFNR (136,11);

Adabas adabas =Employees.readFrom (Employees.NAME,"FLETCHER");

while (adabas.hasMoreElements()) {Employees em = (Employees) adabas.nextElement();

System.out.println ("Personnel-ID: " + em.personnelID + ", Last name: " + em.lastname+ ", First name: " + em.firstname );}

}}

Page 46: Curso Adabas Fundamentals

Interfaces Programação : Natural

READ EMPLOYEES BY NAMESTARTING FROM 'FLETCHER'

DISPLAY PERSONNEL-ID NAME FIRST-NAMEEND

Page 47: Curso Adabas Fundamentals

Adabas – Proteção de Dados

Autorização:Read: NAME, ADDRESS,

DEPT, SALARYUpdate: ADDRESS, SALARY

Autorização:Read: NAME, ADDRESSUpdate: ADDRESS

Autorização:Read: NAME, ADDRESS, SALARYUpdate: SALARY

but only ifDEPT = 'SALE20' andSALARY<80000Adabas Security

Para arquivos, campos, separados para read/update

EMPLOYEES

EVANS SALE20 LOS ALAMOS 34000FLETCHER SALE20 DETROIT 26000SMITH SALE20WILSON MGMT30 criptografando:

Page 48: Curso Adabas Fundamentals

Natural – Função e Proteção aos Dados

Autorização:Uso do Sistema de Informações Pessoais sem autorização para funções de update

Autorização:

Natural SecurityUsuários

Funções de ProcessamentoEstruturas de Dados

Uso do Sistema de Informações Pessoais, que autoriza acesso de leitura

Adabas SecurityAccess/Update to - File

- Fieldcriptografia

Adabas Database

Page 49: Curso Adabas Fundamentals

Resumo

Adabas armazena dados de usuários em formato comprimido nos blocos do Data Storage (DATA).Informações de controle das estruturas do Banco de Dados e dos Dados (Lista Invertida, Address Converter) estão armazenadas no Associator (ASSO).O núcleo 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 funções do núcleo. Os usuários acessam o banco de dados via interfaces de programação Natural, Java, SQL (embutidas, ODBC, WWW Gateway) ou via direct calls. Funções de gerenciamento do Database podem ser chamadas via serviços online ou utilitários batch.

Page 50: Curso Adabas Fundamentals

4

Adabas – Definição de arquivos

Page 51: Curso Adabas Fundamentals

A Unidade de Informação

2002340020023400 LILLYLILLY FLETCHERFLETCHER PHYLLISPHYLLIS SS

PERSONNEL-ID

FIRST-NAME NAME

MIDDLE-NAME

MAR-STAT SEX

FFBIRTH

19650422196504221

Page 52: Curso Adabas Fundamentals

Formatos e tamanhos

Formato

Alphanumeric (A)

Long Alpha* (LA)

Unpacked decimal (U)

Packed decimal (P)

Binary (B)

Integer (F)

Floating Point (G)

Wide (W)

1-253 bytes

1-16381 bytes

1-29 decimal digits

1-29 decimal digits

1-126 bytes

2 or 4 bytes

4 or 8 bytes

1-253 bytes

Tamanho do campo

* Long Alpha é uma opção para formatos alfanuméricos e muito grandes

Page 53: Curso Adabas Fundamentals

Definição de campos

EMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

PERSONNEL-ID A 8.0 AAFIRST-NAME A 20.0 ACNAME A 20.0 AEMIDDLE-NAME A 20.0 ADMAR-STAT A 1.0 AFSEX A 1.0 AGBIRTH U 8.0 AH

Page 54: Curso Adabas Fundamentals

Estruturas

PERSONNEL-ID

FIRST-NAME NAME

MIDDLE-NAME

MAR-STAT SEX BIRTH

2002340020023400 LILLYLILLY FLETCHERFLETCHER PHYLLISPHYLLIS SS FF 19700422197004221

FULL-NAME

Campo Elementar

Grupo de campos

20030602 20030704FREFRE

ENGENG22 2003051720030517 2003052120030521 33 GERGER

GrupoPeriódico

Campo Multi-valorado

LEAVE-START

LEAVE-END

LEAVE-BOOKED

Page 55: Curso Adabas Fundamentals

Definição da EstruturaEmployees

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 AAGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC 2 NAME A 20.0 AE2 MIDDLE-NAME A 20.0 AD1 MAR-STAT A 1.0 AF

.

.

.PE 1 LEAVE-BOOKED AW

2 LEAVE-START U 8.0 AX2 LEAVE-END U 8.0 AY

MU 1 LANG A 3.0 AZ

Page 56: Curso Adabas Fundamentals

Campos Virtuais

FLETCHERFLETCHER LILLYLILLY SS FF 1970042219700422

FLETCHER 1970 1970

NAME-YEAR BIRTH-YEAR

Supercampo Subcampo

Page 57: Curso Adabas Fundamentals

Campos Virtuais - DefiniçãoEMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 AAGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC2 NAME A 20.0 AE2 MIDDLE-NAME A 20.0 AD1 MAR-STAT A 1.0 AF1 SEX A 1.0 AG1 BIRTH U 8.0 AH

SB 1 BIRTH-YEAR U 4.0 B1---- Source field(s) ---- - Start---End--BIRTH 5 8

SP 1 NAME-YEAR A 24.0 B2---- Source field(s) ---- - Start---End--NAME 1 20BIRTH 5 8

Page 58: Curso Adabas Fundamentals

Descritor Único

CLIMENSONCLIMENSON

EVANSEVANS

FLETCHERFLETCHER

SAMMETSAMMET

SMITHSMITH

11 33

11 77

22 1, 41, 4

11 55

33 2, 6, 82, 6, 8

PERSONNEL-ID

FIRST-NAME NAME

MIDDLE-NAME

MAR-STAT SEX

2002340020023400 LILLYLILLY FLETCHERFLETCHER PHYLLISPHYLLIS SS FF1

Lista InvertidaNAME

20004000 1 220010500 1 320015700 1 520023400 1 120023600 1 620025200 1 820027200 1 720030300 1 4

Lista InvertidaPERSONNEL-ID

Descritor único

Page 59: Curso Adabas Fundamentals

Definição de Descritor

EMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AAGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC2 NAME A 20.0 D AE2 MIDDLE-NAME A 20.0 AD1 MAR-STAT A 1.0 AF1 SEX A 1.0 AG

Page 60: Curso Adabas Fundamentals

Campos Multi-Valorados como Descritores

RUSRUSENGENG JAPJAP

ICEICE2005500020055000 LILLYLILLY1 44 ENGENG

LANG

88 1, 2, 3, 4, 5, 6, 7, 81, 2, 3, 4, 5, 6, 7, 8

GERGER 11 88

ICEICE 22 1, 81, 8

JAPJAP 22 1, 81, 8

RUSRUS 11 11

Lista InvertidaLANG

Page 61: Curso Adabas Fundamentals

Grupo Periódico como Descritor

* A extensão do valor do DE através do índice do PE pode ser desabilitada usando a opção XI (excluir índice).

USDUSD 2120021200USDUSD 2240022400

USDUSD 2390023900USDUSD 2570025700

2090020900

2003030020030300 GILBERTGILBERT4 55 USDUSD

SALARY55

2800028000

11 77

2120021200 55 11 44

2240022400 44 22 4, 74, 7

2280022800 55 11 22

2320023200 33 11 77

2390023900 33 11 44

Índice do PE

CURRENCY

2390023900 55 11 22

2470024700 22 11 77

2570025700 22 11 44

2800028000 11 11 44

Page 62: Curso Adabas Fundamentals

Subdescritor e Superdescritor

PERSONNEL-ID

FIRST-NAME NAME

LEAVE-DUE

LEAVE-TAKEN DEPT

LEAVE-DATA

MGMTMGMT 33

DEPARTMENT

1, 3, 81, 3, 8

SALESALE 33 2, 6, 72, 6, 7

TECHTECH 22 4, 54, 5

DEPT-PERSON

Subdescritor

Definição do Superdescritor

Definição do Subdescritor

MGMT10FLETCHERMGMT10FLETCHER 11

MGMT30CLIMENSONMGMT30CLIMENSON 11

MGMT30SMITHMGMT30SMITH 11

11

33

88

SALE20EVANSSALE20EVANS 11 77

SALE20SMITHSALE20SMITH 22

TECH10FLETCHERTECH10FLETCHER 112, 62, 6

44

TECH10SAMMETTECH10SAMMET 11 55

2002340020023400 LILLYLILLY FLETCHERFLETCHER1 3434 0808 MGMT10MGMT10

Superdescritor

Page 63: Curso Adabas Fundamentals

Superdescritor / Subdescritor - DefiniçãoEMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AAGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC2 NAME A 20.0 D AE2 MIDDLE-NAME A 20.0 AD

GR 1 LEAVE-DATA A32 LEAVE-DUE U 2.0 AU2 LEAVE-TAKEN U 2.0 AV

SB 1 DEPARTMENT A 4.0 D S1---- Source field(s) ---- - Start---End--DEPT 1 4

SP 1 DEPT-PERSON A 26.0 D S2---- Source field(s) ---- - Start---End--DEPT 1 6NAME 1 20

Page 64: Curso Adabas Fundamentals

Descriptor Fonético e Hiperdescritor

Algoritmo de fonetização

Algoritmo definido pelo DBA

PERSONNEL-ID

FIRST-NAME NAME

LEAVE-DUE

LEAVE-TAKEN DEPT

2002340020023400 LILLYLILLY FLETCHERFLETCHER1 3434 0808 MGMT10MGMT10

LEAVE-DATA

99

1010

1313

11LEAVE-LEFT

44

11 22

11 55Descritor Fonético 1818 11 88

PHONETIC-NAME

"CLIMENSON""CLIMENSON"

"EVANS""EVANS"

"FLETCHER""FLETCHER"

"SMITH""SMITH"

11 33

33 77

22 1, 41, 4

44 2, 5, 6, 82, 5, 6, 8

Hiper-descritor

2121

262622 3, 73, 7

11 11

3131 11 66

Page 65: Curso Adabas Fundamentals

Fonético / Hiperdescritor - DefiniçãoEMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AAGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC2 NAME A 20.0 D AE2 MIDDLE-NAME A 20.0 AD

GR 1 LEAVE-DATA A32 LEAVE-DUE U 2.0 AU2 LEAVE-TAKEN U 2.0 AV1 DEPT A 6.0 D AO

PH 1 PHONETIC-NAME A 20.0 D PH---- Source field(s) ----NAME

HY 1 LEAVE-TAKEN B 4.0 D H1---- Source field(s) ----LEAVE-DUELEAVE-TAKEN

Page 66: Curso Adabas Fundamentals

Compressão – Como funcionaPERSONNEL-

IDFIRST-NAME NAME

MIDDLE-NAME

MAR-STAT SEX BIRTH

2002340020023400 LILLYLILLY FLETCHERFLETCHER FF1 0000000000000000

Compressão

00010001 LL 2002340020023400 LL LILLYLILLY LL FLETCHERFLETCHER C1 FF LL 00

Page 67: Curso Adabas Fundamentals

Definição da Compressão

EMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AA GR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC N2 NAME A 20.0 D AE2 MIDDLE-NAME A 20.0 AD N1 MAR-STAT A 1.0 AF F1 SEX A 1.0 AG F1 BIRTH U 8.0 D AH

Page 68: Curso Adabas Fundamentals

Supressão de Valores Nulos para campos MU

RUSRUSRUSRUS

RUSRUSJAPJAP

ICEICE2005500020055000 LILLYLILLY1

Modify LANG (2) = ' '

FLETCHERFLETCHER 44 ENGENG

JAPJAP

44 ENGENGJAPJAP

33 ENGENG

Com NUSem NU

Page 69: Curso Adabas Fundamentals

Supressão de Valores Nulos para Descritores

2002520020025200 MARKMARK SMITH3 30000

2001050020010500 JENNYJENNY CLIMENSON4 020030300 GILBERT FLETCHER5 0

Com NUSem NU

0 3, 43, 426000 2 2, 72, 7

3000030000 11 222600026000 22 77

3000030000 11 22

PERSONNEL-ID

FIRST-NAME NAME SALARY

Lista InvertidaSALARY

2

Page 70: Curso Adabas Fundamentals

Considerações de Desenho

Número de campos e repetição de camposEstrutura claraUtilização de espaçoVelocidade de acesso

Seqüência de camposUtilização de espaçoVelocidade de acesso

Definição de DescritoresFlexibilidade de acessoVelocidade de acessoUtilização de espaçoEfeito sobre a performance

Page 71: Curso Adabas Fundamentals

Criando um arquivo

AdabasOnlineServices

AdabasOnlineServices

FNDEF='01, AA, 8, A, DE, UQ'FNDEF='01, AB'FNDEF='02, AC, 20, A, NU'

::

FNDEF='01, AA, 8, A, DE, UQ'FNDEF='01, AB'FNDEF='02, AC, 20, A, NU'

::

Definição de campos via Utilitários

Utilitário batch

Arquivo de entrada

Definição no PredictDefinição no Predict

DBA

Lista Invertida Lista Invertida Address ConverterAddress Converter

ArquivoArquivo EmployeesEmployeesArquivo EmployeesArquivo EmployeesDescriDescriçção de camposão de campos

ASSO DATA

Page 72: Curso Adabas Fundamentals

Visão dos Dados (User Views)

User Views

ProgramProgram

Arquivo EmployeesDescr. Dos campos

ASSO

Arquivo EmployeesDados

DATA

ProgramProgram

First-nameNameStreetHouse numberZipCity

First-nameNameStreetHouse numberZipCity

Personnel-IDFull-NameFirst-nameSalaryBonusesNumber ofchildren

Personnel-IDFull-NameFirst-nameSalaryBonusesNumber ofchildren

Personnel-IDDepartmentBirth-dateLeaveDays of illness

Personnel-IDDepartmentBirth-dateLeaveDays of illness

Addresses Salaries Times of absence

Page 73: Curso Adabas Fundamentals

Definição de arquivo AdabasEMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AA GR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC N2 NAME A 20.0 D AE2 MIDDLE-NAME A 20.0 AD N1 MAR-STAT A 1.0 AF F1 SEX A 1.0 AG F1 BIRTH U 8.0 D AH

GR 1 ADDRESS A1MU 2 ADDRESS-LINES A 20.0 D AI N

2 CITY A 20.0 D AJ N2 ZIP A 10.0 AK N2 COUNTRY A 3.0 AL N

GR 1 TELEPHONE A22 AREA-CODE A 6.0 AN N2 PHONE A 15.0 AM N

Page 74: Curso Adabas Fundamentals

Exemplo de uma User View

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AA GR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC N2 INITIALS A 1.0 AD N2 NAME A 20.0 D AE1 MIDDLE-NAME A 20.0 AD N

GR 1 TELEPHONE A22 AREA-CODE A 6.0 AN N2 PHONE A 15.0 AM N

EMPLOYEES

Page 75: Curso Adabas Fundamentals

Usando User Views

Compilação do Programa

Program XYUser View 'Salaries'

Program XYUser View 'Salaries'

User View 'Salaries'Data definitionUser View 'Salaries'Data definition

PREDICT

Referência ativa

ProgramaExecutávelProgramaExecutável

Program XY uses User View'Salaries' with fields . . .

Program XY uses User View'Salaries' with fields . . .

Descrição dos dados

Page 76: Curso Adabas Fundamentals

Relacionamento Employees-Vehicles

Relacionamento 1 : n

2001570020015700 WILLYWILLY SAMMETSAMMET 3095283930952839 PONTIACPONTIAC

2003030020030300 GILBERTGILBERT FLETCHERFLETCHER 3093832530938325 FORDFORD LINCOLNLINCOLN

GENERALMOTORS

Page 77: Curso Adabas Fundamentals

Variante 1 – Dois arquivos

EMPLOYEES VEHICLES

1

5

2001570020015700 WILLYWILLY SAMMET

GILBERT FLETCHER

5

6

2001570020015700 3095283930952839 GENERALMOTORS

20030300 30936004 MERCEDESBENZ

7 20030300 30938325 FORD

20030300

Page 78: Curso Adabas Fundamentals

Variante 1 - User ViewsEMPLOYEES

VEHICLES

Ty L Name F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AA GR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC N2 INITIALS A 1.0 AD N2 NAME A 20.0 D AE1 MIDDLE-NAME A 20.0 AD N1 MAR-STAT A 1.0 AF F1 SEX A 1.0 AG F1 BIRTH U 8.0 D AH

Ty L Name F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 REG-NUM A 15.0 D U AA N 1 CHASSIS-NUM I 4.0 AB F1 PERSONNEL-ID A 8.0 D AC

GR 1 CAR-DETAILS AD2 MAKE A 20.0 D AE N2 MODEL A 20.0 AF N2 COLOR A 10.0 D AG N

Page 79: Curso Adabas Fundamentals

Variante 2 - Grupo Periódico

3093832530938325 FORDFORD LINCOLNLINCOLN

2001570020015700 WILLYWILLY SAMMETSAMMET

2003030020030300 GILBERTGILBERT FLETCHERFLETCHER

5 3095283930952839 PONTIACPONTIAC

7 3093600430936004 MERCEDESBENZ

MERCEDESBENZ 280SE280SE

GENERALMOTORS

Page 80: Curso Adabas Fundamentals

Variante 2 – Definição de arquivoEMPLOYEES

Ty L Field ID F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AAGR 1 PERSONNEL-DATA G1 GR 2 FULL-NAME AB

3 FIRST-NAME A 20.0 AC N3 NAME A 20.0 D AE3 MIDDLE-NAME A 20.0 AD N

.

.

.PE 1 CAR-DETAILS G2

2 REG-NUM A 15.0 D U BA N 2 CHASSIS-NUM I 4.0 BB F2 MAKE A 20.0 D BC N

Page 81: Curso Adabas Fundamentals

Variante 3 – Arquivo com dois tipos de registros

EMPLOYEES-VEHICLES

20015700 30952839 GENERALMOTORS

1

5

20015700 WILLY SAMMET

20030300 30938325 FORD

20030300 30396004 MERCEDESBENZ

20030300 GILBERT FLETCHER

2

3

4

Page 82: Curso Adabas Fundamentals

Variante 3 - User ViewsEMPLOYEES

VEHICLES

Ty L Name F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 PERSONNEL-ID A 8.0 D U AA NGR 1 FULL-NAME AB

2 FIRST-NAME A 20.0 AC N2 INITIALS A 1.0 AD N2 NAME A 20.0 D AE N1 MIDDLE-NAME A 20.0 AD N1 MAR-STAT A 1.0 AF N1 SEX A 1.0 AG N1 BIRTH U 8.0 D AH N

Ty L Name F Length D U DB S*- - ----------------------- *- ------ * * -- *

1 REG-NUM A 15.0 D U FA N 1 CHASSIS-NUM I 4.0 FB F1 PERSONNEL-ID A 8.0 D FC N

GR 1 CAR-DETAILS FD2 MAKE A 20.0 D FE N2 MODEL A 20.0 FF N2 COLOR A 10.0 D FG N

Page 83: Curso Adabas Fundamentals

Resumo

Um campo é uma unidade lógica de informação dentro de um registro de dados Adabas.Adabas suporta campos elementares, grupos de campos, campos multi-valorados, grupos periódicos, sub- e super- campos, os quais, dependendo do tipo e opções do campo, são armazenados em formato comprimido no Data Storage.Descritores permitem acesso eficiente. Adabas suporta descritores normais, descritores fonéticos, sub-, super- e hyperdescriptors, os quais podem opcionalmente serem definidos com a opção “unique”.O acesso ao Adabas é campo-orientado. Por esta razão, as visões de usuário podem ser definidas para um arquivo, as quais implementam clareza e aprimoram as possibilidades do desenho.

Page 84: Curso Adabas Fundamentals

5

Adabas – Lógica de Acesso

Page 85: Curso Adabas Fundamentals

Tipos de Acesso

LeituraLê campos do registro de dados Processamento em seqüência física

em seqüência de ISNem seqüência lógica

Lê valores dos descritores na lista invertida

Pesquisaseleção por ISN Pesquisa por um critério ou pesquisa complexa Classificada por 1 até 3 descritores

Page 86: Curso Adabas Fundamentals

Leitura em seqüência física

Data Storage

4312

4313

4314

4315

FLETCHER SAMMET1 5

CLIMENSON EVANS3 7

SMITH SMITH2 8

FLETCHER SMITH4 6

Page 87: Curso Adabas Fundamentals

Núcleo Adabas

I/O BufferPrograma de

AplicaçãoPrograma de

Aplicação

Leitura em seqüência física -Procedimento

Leitura física

Valores devolvidos

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 88: Curso Adabas Fundamentals

Leitura por ISNAddress Converter

43124312

43144314

43134313

43154315

43124312

43154315

43134313

43144314

4312431343144315

FLETCHER SAMMET1 5

CLIMENSON EVANS3 7

SMITH SMITH2 8

FLETCHER SMITH4 6

Data Storage

Page 89: Curso Adabas Fundamentals

Núcleo Adabas

I/O BufferPrograma de

AplicaçãoPrograma de

Aplicação

Leitura por ISN - Procedimento

Leitura por ISN

Valores devolvidos

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 90: Curso Adabas Fundamentals

Leitura por Seqüência Lógica

4312431343144315

FLETCHER SAMMET1 5

CLIMENSON EVANS3 7

SMITH SMITH2 8

FLETCHER SMITH4 6

Data StorageAddress Converter

43124312

43144314

43134313

43154315

43124312

43154315

43134313

43144314

Lista Invertida NAME

CLIMENSON 1 3

EVANS 1 7

FLETCHER 2 1, 4

SAMMET 1 5

SMITH 3 2, 6, 8

Page 91: Curso Adabas Fundamentals

Núcleo Adabas

I/O Buffer

Programa deAplicação

Programa deAplicação

Leitura por Seqüência Lógica -Procedimento

Leitura Lógica

Valores devolvidos

Lista invertida

AddressConverter

DadosDados

ASSOCIATOR

DATA STORAGE

WORK

Page 92: Curso Adabas Fundamentals

Lista InvertidaNAME

Lendo da Lista Invertida - Histograma

CLIMENSON 11 33

EVANS 11 77

FLETCHER 22 1, 41, 4

SAMMET 11 55

SMITHSMITH 33 2, 6, 82, 6, 8

Page 93: Curso Adabas Fundamentals

Núcleo Adabas

I/O BufferPrograma de

AplicaçãoPrograma de

Aplicação

Histograma

Retorna a quantidade e valores dos descritores

Histograma - Procedimento

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 94: Curso Adabas Fundamentals

Pesquisa – Seleção no Database

Uma lista de registros é criada (na forma de ISNs) os quais atendem ao critério de pesquisa especificado.

A lista de ISN é classificada por - ISN (por default)- 1 até 3 descritores

em ordem ascendente ou descendente.

O número de registros encontrado é devolvido.

Page 95: Curso Adabas Fundamentals

Pesquisa usando DescritoresSeleção por ISN dos empregados que trabalham no departamento "SALE20" e nascidos antes de 1960

MGMT10MGMT10 22

Lista invertidaBIRTH

11

MGMT40MGMT40 22 3, 83, 8

SALE 20SALE 20 33 2, 6, 72, 6, 7

TECH10TECH10 22 4, 54, 5

1950010119500101 11 22

1956022419560224 11 44

1957070919570709 11 66

1961122219611222 11 77

1965042219650422 11 11

1967111319671113 11 33

1972090519720905 11 88

1974021919740219 11 55

Lista invertidaDEPT

26

26

Quantidade: 2

Lista de ISN Resultante

Page 96: Curso Adabas Fundamentals

Núcleo Adabas

I/O BufferPrograma de

AplicaçãoPrograma de

Aplicação

Pesquisa usando Descritores -Procedimento

Pesquisa

Quantidade de ISN devolvidos

Lista de ISNsselecionados

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 97: Curso Adabas Fundamentals

Pesquisa usando Não-DescritoresPesquisa por ISN para empregados “femininos” no departamento "MGMT30"

Address ConverterLista invertidaDEPT

4312431343144315

FLETCHER F SAMMET M1 5

CLIMENSON F EVANS M3 7

SMITH M SMITH M2 8

FLETCHER M SMITH M4 6

Data Storage

43124312

43144314

43134313

43154315

43124312

43154315

43134313

43144314

MGMT10MGMT10 22 11

MGMT30MGMT30 22 3, 83, 8

SALE20SALE20 33 2, 6, 72, 6, 7

TECH10TECH10 22 4, 54, 5

3838

33Quantidade: 1Lista de ISN Resultante

ISN resultantes Intermediários

Page 98: Curso Adabas Fundamentals

Pesquisa usando Não-Descritores -Procedimento

Núcleo Adabas

I/O Buffer

Programa deAplicação

Programa deAplicação

Pesquisa

Quantidade de ISN

Lista de ISNsselecionados

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 99: Curso Adabas Fundamentals

Processando os ISNs selecionados

4312431343144315

FLETCHER SAMMET1 5

CLIMENSON EVANS3 7

SMITH SMITH2 8

SMITH FLETCHER4 6

43124312

43144314

43134313

43154315

43124312

43154315

43134313

43144314

26

26

Quantidade: 2

Page 100: Curso Adabas Fundamentals

Núcleo Adabas

I/O Buffer

Programa deAplicação

Programa deAplicação

Lendo campos dos Registros Selecionados

Pesquisa

Devolve valores dos campos dos registros selecionados

Leitura

Lista de ISNsselecionados

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 101: Curso Adabas Fundamentals

Agrupando arquivosSeleção por ISN dos empregados trabalhando no departamento "MGMT30“ e que possuem carros General Motors. Agrupa-se Employees e Vehicles via campo personnel-ID.

33Quantidade: 1

20000400FORD1

20010500GENERAL MOTORS2

20055000TOYOTA3

20030300MERCEDES-BENZ4

Lista invertidaDEPTMGMT10MGMT10 22 11

MGMT30MGMT30 22 3, 83, 8

SALE20SALE20 33 2, 6, 72, 6, 7

TECH10TECH10 22 4, 54, 5

Lista invertidaPERSONNEL-ID

EMPLOYEES VEHICLESLista invertidaMAKEFORD 11 11GENERAL MOTORS 22 2, 52, 5MERCEDES-BENZ 11 44

TOYOTATOYOTA 11 3 3

Data Storage

20000400 1 220010500 1 320015700 1 520023600 1 620025200 1 820027200 1 720030300 1 420055000 1 1

5 20015700GENERAL MOTORS

Lista de ISN resultante

Page 102: Curso Adabas Fundamentals

Agrupamento Lógico de arquivos

Seleção de ISN dos empregados nodepartamento "MGMT30"

Leitura pelo personnel-IDdo primeiro empregado(ISN 3)

Leitura do personnel-IDdo segundo empregado(ISN 8)

Seleção do ISN do arquivo vehicles com o personnel ID do empregado e fabricante "General Motors"

Seleção do ISN do arquivo vehicles com o personnel-ID do empregadoe fabricante "General Motors"

Seleção por ISN dos empregados trabalhando no departamento "MGMT30“ e que possuem carros General Motors. Agrupa-se Employees e Vehicles via campo personnel-ID.

Page 103: Curso Adabas Fundamentals

Resumo

Comandos Read fornecem valores de campos de registros de um arquivo Adabas em seqüência física, por ISN, ou seqüência lógica 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 critérios 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 lógico de arquivos pode ser usado para associar dados de diversos arquivos relacionados.

Page 104: Curso Adabas Fundamentals

6

Database - Modificações, Restart & Recovery

Page 105: Curso Adabas Fundamentals

Modificações no Database

Adicionando um novo registro de dados com valores de campoAssinalamento de ISN pelo Adabas ou pelo usuário

Modificando campos em um registro existente

Excluindo um registro existente

Page 106: Curso Adabas Fundamentals

Modificações no DatabaseNúcleo Adabas

I/O Buffer

Programa deAplicação

Programa deAplicação

Lista invertida

AddressConverter

Dados

ASSOCIATOR

DATA STORAGE

WORK

Page 107: Curso Adabas Fundamentals

Estudo de Caso

Um empregado foi escalado para cinco dias de férias.

Uma atividade importante interferiu e o empregado cancelou suas férias.

Dois dias depois, o empregado solicitou 15 dias de férias.

Os dois formulários de férias são processados por duas pessoas que trabalham no departamento, ao mesmo tempo.

Page 108: Curso Adabas Fundamentals

Estudo de CasoCancelado

5 diasAgendado

15 days

Read employeedias de ausência = 15

Read employeedias de ausência = 5

Modificação no empregadonovo dias de ausência = 0 Modificação no empregado

novo dias de ausência = 20

Page 109: Curso Adabas Fundamentals

HOLD – (Retenção)

Cancelado5 dias

Agendado 15 dias

Read employeewith HOLD

Read employeewith HOLD

dias de ausência = 5

Modificação no empregadonovo dias de ausência = 0

Page 110: Curso Adabas Fundamentals

Conceito de Transação

O personnel-ID de um empregado deve ser modificado de 20023400 para 20055000.

O empregado com o personnel-ID 20010500 deve ser excluído.

Que efeito estas mudanças produzem no veículo do empregado?

Page 111: Curso Adabas Fundamentals

Transação

Uma transação é uma seqüência de comandos de alterações na base de dados, as quais produzem uma consistência lógica na unidade de informação que será, depois, transformada em outra consistência lógica da unidade de informação.

Uma transação sempre deve ser executada em sua totalidade ou em parte nenhuma (princípio do Tudo-ou-Nada)

Uma transação começa com o primeiro acesso que causa um estado de HOLD. Ao final da transação, todos os registros postos em estado de HOLD são liberados.

Page 112: Curso Adabas Fundamentals

Fim da transaçãoUpdatePersonnel-ID

Read employeecom HOLD

Read vehiclescom HOLD

Fim da Transação

Changeemployee

Changevehicles

Armazena informações das modificações

Transção lógica

WORK

Page 113: Curso Adabas Fundamentals

Desfazendo uma Transação

Read employeecom HOLD

Read vehiclecom HOLD

Delete employee

Delete vehicle

Read vehiclecom HOLD

Change vehicle

BackoutTransaction

Backout

WORK

DeleteEmployee

Armazena informações das modificações

Page 114: Curso Adabas Fundamentals

Limite de Tempo de Transação

Reademployeecom HOLD

Backout

Deleteemployee

Reademployeecom HOLD

DeleteEmployee

Page 115: Curso Adabas Fundamentals

Reinício AutomáticoDelete

Employee

Read employeecom HOLD

Backout

Delete employee

WORK

Armazena informações das modificações

Page 116: Curso Adabas Fundamentals

Reinício de ProgramaUsuário XY

ET‘Última atividade foi cancelamento da ausência para empregado 20023400'

Backout

Delete employee

Read employee com HOLD

Read ET data‘Última atividade foi...'

AdabasSystem File

Usuário XY:'Cancela ausência para empregado 20023400‘

WORK

Armazena informações das modificações

Page 117: Curso Adabas Fundamentals

Gerenciamento pelo Usuário

Tipo de UsuárioUso de ET dataParâmetros específicos de usuário

OPEN(logon para o Adabas)

CLOSE(logoff do Adabas)

Page 118: Curso Adabas Fundamentals

Tipos de Usuários

ACC user

UPD user (ET logic user)

EXU user

EXF user

UTI user

Page 119: Curso Adabas Fundamentals

Database – Backup / Recuperação

Backup do DatabaseRead employeecom HOLD

Read vehiclecom HOLD

Deleteemployee

Change vehicle

Protection Log File

DBA

Armazena informações das modificações

Page 120: Curso Adabas Fundamentals

Resumo

Um arquivo Adabas pode ser modificado via funções de “adição" e “exclusão" de registros de dados, e por modificação de valores de campos de um registro de dados existente.Alterações concorrentes pelos diversos usuários são serializadas por meio da lógica de "hold". Alterações associadas de um usuário são executadas em uma transação lógica.Para modificações, o Adabas permite acesso concorrente de diversos usuários ou acesso exclusivo de um usuário. Opções especiais podem ser configuradas com o comando OP.As informações de alterações no arquivo WORK permitem um reinício automático após uma falha do sistema. Na ocorrência de danos num disco, o database pode ser recuperado usando-se uma cópia backup ou o protection log.