prof. alexander roberto valdameri banco de dados abordagem hierárquica
TRANSCRIPT
![Page 1: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/1.jpg)
Prof. Alexander Roberto Valdameri
Banco de Dados Banco de Dados Abordagem Abordagem
HierárquicaHierárquica
![Page 2: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/2.jpg)
2
Contextualização
• Não existe documentação original,
não há homologação;• Baseado IMS – Information
Management System, mais utilizado
ainda hoje;• Utilizado em ambientes corporativos
– Mainframe.
![Page 3: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/3.jpg)
3
Estruturas Básicas do Modelo
• Dados – representados registros;• Tipos de registros – estrutura de
dados com itens de dado (atributo);• Tipos de relacionamento pai-filho –
RPF, cardinalidade 1:N, onde:• o registro do lado “1” é chamado de tipo
registro pai;• o(s) registro(s) do lado “N” chamado(s) tipo
registro filho.
![Page 4: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/4.jpg)
4
BD Hierárquico - Representação
DEPARTAMENTO
CD_DEPTO NM_DEPTO NM_GERENTE
EMPREGADO
CD_EMP NM_EMP DT_NASC
PROJETO
CD_PROJ NM_PROJ DS_LOC
DEPENDENTE
CD_DEP NM_DEP DT_NASC
SUPERVISOR
CD_SUP NM_SUP
![Page 5: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/5.jpg)
5
Linguagem de Definição - DDLschema name = EMPRESAHierarchies = HIERARQUIA1record name = DEPARTAMENTO type = RAIZ DE HIERARQUIA1 data items = CD_DEPTO integer
NM_DEPTO character(20) NM_GERENTE character(30)
key = CD_DEPTO order by = NM_DEPTO
record name = EMPREGADO parent = DEPARTAMENTO child NUMBER = 1 data items = CD_EMP integer
NM_EMP character(30) DT_NASC character(08)
key = CD_EMP order by = NM_EMP
![Page 6: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/6.jpg)
6
Linguagem de Definição - DDLrecord name = PROJETO
parent = DEPARTAMENTO
child NUMBER = 2
data items = CD_PROJ integer
NM_PROJ character(20)
DS_LOC character(15)
key = CD_PROJ
order by = NM_PROJ
record name = SUPERVISOR parent = EMPREGADO child NUMBER = 1 data items = CD_SUP integer
NM_SUP character(30) key = CD_SUP order by = NM_SUP
![Page 7: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/7.jpg)
7
Fonte: http://www.cs.yale.edu/homes/avi/db-book/b.pdf
BD Hierárquico – Representaçãocom replicação de dados
![Page 8: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/8.jpg)
8
Fonte: http://www.cs.yale.edu/homes/avi/db-book/b.pdf
BD Hierárquico – Representaçãosolução alternativa para replicação de dados
![Page 9: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/9.jpg)
9
Linguagem de Manipulação - DML
Alguns Comandos DML:
GET Recuperação
INSERT
DELETE
REPLACE
Atualização de Registros
A linguagem hospedeira é chamada de DL/1.
![Page 10: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/10.jpg)
10
Resumindo…
• Dificuldade na implementação;• Buscas mais complexas pela
necessidade de navegação na estrutura de árvore;
• Manteve-se, durante anos, à frente do modelo relacional pelas características das implementações.
![Page 11: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/11.jpg)
11
Outros Produtos:
• ADABAShttp://www.consist.com.br/brasil/adabas/informacao.htm
• IBM IMShttp://www.ibm.com/br/products/software/db2/ts/ims.phtml
• SYSTEM 2000http://www.sas.com/products/system2000/index.html
![Page 12: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/12.jpg)
Banco de Dados Banco de Dados Abordagem em RedeAbordagem em Rede
![Page 13: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/13.jpg)
13
Contextualização
• Em 1971, relatório apresentado pelo
Database Task Group cria o CODASYL
- Conference on Data Sistems Languages;• Em 1978 e 1981 novos conceitos são
incorporados, passa ser conhecido
como “Modelo de Rede”;• Linguagem Cobol como anfitriã (host).
![Page 14: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/14.jpg)
14
Estruturas Básicas do Modelo
• Dados – representados em registros;• Tipos de registros – estrutura de
dados com itens de dado (atributo);• Tipos Conjunto – descrição de uma
relação 1:N entre dois tipos de
registros.
![Page 15: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/15.jpg)
15
Estruturas Básicas do Modelo
• Relacionamentos entre os dados –
representados por ligações
(ponteiros);• Registros no BD são organizados
como coleções arbitrárias de gráfos;• Trata-se de um “sistema de
navegação”.
![Page 16: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/16.jpg)
16
BD em Rede – Modelo de Dados
Sistemas e Computação ...
Alisson Rafael Appio ...
Leonardo Hyppolito ...
Silvia Hedla Correia Sales ...
Léo Jonathan Faht ...
DepartamentoRegistro Proprietário
AlunoRegistro Membro
![Page 17: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/17.jpg)
17
BD em Rede – Representação
Sistemas e Computação ...
Alisson Rafael Appio ...
Leonardo Hyppolito ...
Silvia Hedla Correia Sales ...
Léo Jonathan Faht ...
Registro Departamento
Registro Aluno
•
•
•
•
•
![Page 18: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/18.jpg)
18
BD em Rede – Representação
EMPREGADO
Codigo_Empregado ...
PROJETO
Codigo_Projeto ...
E_P
EMPREGADO
Codigo_Empregado ...
PROJETO
Codigo_Projeto ...
P_E
![Page 19: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/19.jpg)
19
BD em Rede – Representação
E_PP_E
EMPREGADO
Codigo_Empregado ...
PROJETO
Codigo_Projeto ...
Modelo em Rede não permite representar um
relacionamento N:N entre dois tipos de registros em um único tipo de conjunto.
![Page 20: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/20.jpg)
20
BD em Rede – Representação
E_T P_T
EMPREGADO
Codigo_Empregado ...
PROJETO
Codigo_Projeto ...
Este tipo de registro adicional de conjunto “TRABALHA_EM” é denominado tipo de registro de
ligação.
TRABALHA_EM
Numero_Horas ...
![Page 21: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/21.jpg)
21
Linguagem de Definição - DDLschema name is EMPRESA
record name is EMPREGADO
duplicates are not allowed for CODIGO_EMPREGADO
CODIGO_EMPREGADO type is numeric integer
NOME_EMPREGADO type is character 30
record name is PROJETO
duplicates are not allowed for CODIGO_PROJETO
CODIGO_PROJETO type is numeric integer
NOME_PROJETO type is character 20
LOCAL_PROJETO type is character 15
record name is TRABALHA_EM
duplicates are not allowed for CODIGO_EMPREGADO,CODIGO_PROJETO
CODIGO_EMPREGADO type is numeric integer
CODIGO_PROJETO type is numeric integer
NUMERO_HORAS type is numeric (4,1)
![Page 22: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/22.jpg)
22
BD em Rede – Representação
Não há necessidade de redundância (replicação) do dado.Fonte: http://www.cs.yale.edu/homes/avi/db-book/a.pdf
![Page 23: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/23.jpg)
23
Linguagem de Manipulação - DML
Alguns Comandos DML:FIND Navegação
GET Recuperação
STORE
ERASE
MODIFYAtualização de Registros
CONNECT
DISCONNECT
RECONNECT Atualização de Conjuntos
![Page 24: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/24.jpg)
24
Resumindo…
• Fortemente dependente da
implementação;• Buscas mais complexas em
comparação com o relacional;• Aumento significativo no trabalho do
programador, seja para o projeto
como para a manipulação de dados.
![Page 25: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/25.jpg)
25
Outros Produtos:
• IDS – Honeywell Inc.• VAX-DBMS – Digital Inc.• TOTAL/SUPRA – Cincom Inc.• IDMS – Xerox.• IMAGE – Hewlett-Packard.
![Page 26: Prof. Alexander Roberto Valdameri Banco de Dados Abordagem Hierárquica](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc10d497959413d8c459c/html5/thumbnails/26.jpg)
26
Exercícios:
1. Explique a diferença entre os SGBDs baseados nos modelos hierárquico, de rede e relacional.
2. Cite algumas desvantagens do modelo hierárquico em relação ao modelo de rede.
3. Comente sobre a independência lógica e física dos dados nos modelos hierárquicos e de rede.
4. Por que ocorreu uma certa resistência por parte das empresas ao adotarem o CODASYL como produto para gerenciamento de dados?
5. Em qual(is) arquitetura(s) os modelos de rede e hierárquico eram/são encontrados?