TRA001-44E
Contedo
Captulo
Informao e Comunicao Fundamentos de Banco de Dados Adabas - Arquitetura Adabas - Definio de Arquivo Adabas - Lgica de Acesso Database - Modificaes, Reincio & Recuperao
Software AG
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
Compras
Desenvolvimento/ Produo
Estoque/Expedio
Sistema de TI Operational
Aplicaes
Database Comum
Tarefas Organizacionais
Gerenciamento
Estatsticas / Previses
Contabilidade
Recursos Humanos
Marketing / Vendas
bot Ange
Planejamento da Produo
Sistema de TI Operacional
Estatsticas Individuais
Database Comum
bot A nge
Parcerias Comerciais
Clientes
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
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)
Funcionrios
Carros
Pedidos
Clientes
Artigos
Faturas
Funcionrios
Clientes
Carros
Pedidos
Artigos
Faturas
Departamento
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
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
ENTIRE NET-WORK
ODBC
Internet Intranet
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
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
1 2
20023400 20000400
MGMT10 SALE20
Compresso
Registro de dados original 20023400 FLETCHER LILLY MGMT10
Compresso Compresso
Registro comprimido
20023400 FLETCHER LILLY MGMT10
Registro comprimido
ISN
Bloco fsico
ISN
20023400 FLETCHER
LILLY
Bloco fsico
ISN
O Associator
Associator
ASSO DATA Informaes de controle - Database - User data
WORK
Associator
NAME
Conceito de Descritor
FLETCHER
Data Storage
EMPLOYEES ISN PERSONNEL-ID NAME FIRST-NAME DEPT
20023400
MGMT10
Lista Invertida
EMPLOYEES
ISN 1
Lista Invertida por Descritor NAME CLIMENSON 1
2 3 3 7 1, 4 5 2, 6, 8 4 5 6 7 8 1 1 3
FLETCHER 2
DATA
Address Converter
1 1 1 3
3 7 1, 4 5 2, 6, 8
FLETCHER 2
1 3 2 4
FLETCHER
CLIMENSON
5 7 8 6
SMITH FLETCHER
Ncleo do Adabas
online batch
Mdulo de Comunicao Mdulo de Comunicao
Utility
Mdulo de Comunicao
Ncleo Adabas
ASSO DATA WORK
Buffer Pool
Read employee FLETCHER Read employee FLETCHER
Ncleo Adabas
I/O Buffer
FLETCHER 2 4312
1, 4
5
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
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
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 . . . . . .
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
READ EMPLOYEES BY NAME STARTING FROM 'FLETCHER' DISPLAY PERSONNEL-ID NAME FIRST-NAME END
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:
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
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)
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
S S
F 19700422 F 19700422
LEAVEBOOKED
LEAVESTART LEAVEEND
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
AW AX AY AZ
Campos Virtuais
S S
F F
19700422 19700422
NAME-YEAR
BIRTH-YEAR
FLETCHER 1970
Supercampo
1970
Subcampo
SB
SP
B2
Descritor nico
PERSONNELID FIRSTNAME NAME MIDDLENAME MARSTAT SEX
S S
F F
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 *
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
4 4
USD 21200 USD 21200 USD 22400 USD 22400 USD 23900 USD 23900 USD 25700 USD 25700 5 USD 28000 5 USD 28000
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
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
2 2, 6 2 2, 6 1 4 1 4 1 5 1 5
GR
SB
SP
S2
34 34
08 08
MGMT10 MGMT10
Algoritmo de fonetizao
LEAVE-LEFT
9 9
PHONETIC-NAME
1 4 1 4
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
GR
PH
D D
HY
4.0
H1
F F
00000000 00000000
Compresso
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
Com NU
3 4 5
30000 0 0
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
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
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
N N F F
D D D
GR MU
N N N N N N
GR
N N N N N
GR
Relacionamento Employees-Vehicles
30952839 30952839
GENERAL MOTORS
PONTIAC PONTIAC
30938325 30938325
FORD FORD
LINCOLN LINCOLN
Relacionamento 1 : n
EMPLOYEES
VEHICLES
1 5
SAMMET
5 6 7
Ty *-
GR
L 1 1 1 1 2 2 2
D * D D D D
U * U
DB -AA AB AC AD AE AF AG
S * N F N N N
30952839 30952839
GENERAL MOTORS
PONTIAC PONTIAC
30938325 30938325
30936004 30936004
FORD LINCOLN FORD LINCOLN MERCEDES MERCEDES 280SE 280SE BENZ BENZ
N N
PE
1 2 2 2
A I A
D D
G2 BA BB BC
N F N
1 2 3 4 5
20015700
WILLY
SAMMET
20015700 30952839 GENERAL MOTORS
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
1 3 2 4
5 7 8 6
WORK
ASSOCIATOR
I/O Buffer
Leitura fsica
DATA STORAGE
Dados
Valores devolvidos
Data Storage
1 3 2 4
5 7 8 6
ASSOCIATOR
I/O Buffer
DATA STORAGE
Dados
Valores devolvidos
Address Converter
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312 4315 4315 4313 4313 4314 4314
Data Storage
1 3 2 4
5 7 8 6
WORK
ASSOCIATOR
Lista invertida Address Converter
DATA STORAGE
Valores devolvidos
Dados
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
I/O Buffer
DATA STORAGE
Dados
WORK
ASSOCIATOR
I/O Buffer
DATA STORAGE
Dados
Address Converter
4312 4312 4314 4314 4313 4313 4315 4315 4312 4312
Data Storage
1 3 2 4
5 SAMMET M 7 8 6
3 3 8 8
4315 4315
Quantidade: 1
ASSOCIATOR
Lista invertida Address Converter
DATA STORAGE
Dados
1 3 2 4
Pesquisa
ASSOCIATOR
Lista invertida Address Converter
Leitura
I/O Buffer
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
Quantidade: 1
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
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
HOLD (Reteno)
Cancelado 5 dias Agendado 15 dias
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.
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
Transo lgica
WORK
B a c k o u t
Read vehicle com HOLD Delete vehicle Read vehicle com HOLD Change vehicle Backout Transaction
Read employee com HOLD Read employee com HOLD Delete employee
B a c k o u t
Reincio Automtico
Delete Employee
WORK
B a c k o u t
Delete employee
Reincio de Programa
Usurio XY WORK
B a c k o u t
Delete employee
Tipos de Usurios
ACC user UPD user (ET logic user) EXU user EXF user UTI user
Backup do Database
Delete employee
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.