| Linha 11: | Linha 11: | ||
Para melhor visualização dos conceitos, considere um banco de dados que representa um relacionamento conta-cliente em um sistem bancário. Portanto, existem dois tipos de registros: conta e cliente. O tipo de registro cliente consiste de três campos: customer_name, customer_street e customer_city. Da mesma maneira, o tipo de registro conta possui dois campos: account_number e balance. | Para melhor visualização dos conceitos, considere um banco de dados que representa um relacionamento conta-cliente em um sistem bancário. Portanto, existem dois tipos de registros: conta e cliente. O tipo de registro cliente consiste de três campos: customer_name, customer_street e customer_city. Da mesma maneira, o tipo de registro conta possui dois campos: account_number e balance. | ||
Uma instância desse banco de dados aparece na figura H.1. Cada retângulo representa um registro e cada linha representa um link que liga os dois registros. O registro no topo de hierárquia é apenas a raiz da árvore (nível 0), chamado de dummy node. É possível observar que os registros do tipo cliente estão no nível 1 da árvore, enquanto os regitros do tipo conta estão no nível 2. Se um registro cliente está associado a um ou mais registros do tipo conta, então aquele cliente específico possui aquela(s) conta(s). Um banco de dados baseado no modelo hierárquico é uma coleção de tais árvores, portanto formando uma floresta. Uma árvore deste tipo é chamada de database tree. | Uma instância desse banco de dados aparece na figura H.1. Cada retângulo representa um registro e cada linha representa um link que liga os dois registros. O registro no topo de hierárquia é apenas a raiz da árvore (nível 0), chamado de dummy node. É possível observar que os registros do tipo cliente estão no nível 1 da árvore, enquanto os regitros do tipo conta estão no nível 2. Se um registro cliente está associado a um ou mais registros do tipo conta, então aquele cliente específico possui aquela(s) conta(s). Um banco de dados baseado no modelo hierárquico é uma coleção de tais árvores, portanto formando uma floresta. Uma árvore deste tipo é chamada de database tree. | ||
No caso da figura, o cliente Hayes possui a conta A-102, enquanto o cliente Johnson possui as contas A-101 e A-201 e o cliente Turner possui a conta A-305. | No caso da figura, o cliente Hayes possui a conta A-102, enquanto o cliente Johnson possui as contas A-101 e A-201 e o cliente Turner possui a conta A-305. | ||
O conteúdo de um determinado registro pode ser repetido em diferentes localizações. Por exemplo, neste sistema bancário do exemplo da figura, uma conta pode pertencer a vários clientes. Portanto, a informação referente a esta determinada conta ou a informação dos vários clientes que possuem esta conta terá de ser repetida. Esta repetição pode ocorrer na mesma árvore ou em diferentes árvores e apresenta duas desvantagens: | O conteúdo de um determinado registro pode ser repetido em diferentes localizações. Por exemplo, neste sistema bancário do exemplo da figura, uma conta pode pertencer a vários clientes. Portanto, a informação referente a esta determinada conta ou a informação dos vários clientes que possuem esta conta terá de ser repetida. Esta repetição pode ocorrer na mesma árvore ou em diferentes árvores e apresenta duas desvantagens: | ||
*1. Inconsistência pode surgir com atualizações nos dados do banco | |||
*2. Desperdício de espaço é inevitável | |||
[[Arquivo:FiguraH.1.png]] | [[Arquivo:FiguraH.1.png]] | ||
Edição das 17h19min de 19 de agosto de 2013
No modelo hierárquico de banco de dados, os dados são representados como coleções de registros e são organizados usando a estrutura de dados de árvore. O tipo de um registro é definido por uma coleção de campos (atributos) e, graças à estrutura de árvore, é possível usar o relacionamento pai/filho para relacionar registros, onde um registro pai pode possuir um ou mais registros filhos, mas um registro só poder ter um registro pai (também conhecido como relacionamento 1:N).
História
O modelo foi um dos primeiros a serem usados pois era bastante apropriado em mídias de armazenamento de tipo linear, como fitas magnéticas que eram usadas na época. Foi criado pela IBM na década de 1960. Sua primeira implementação foi feita pela própria empresa, o IMS. O IMS possui uma extensiva capacidade de transações e continua sendo um produto forte no mercado, mesmo depois de mais de quarenta anos após sua criação. O sistema recebeu diversas melhorias ao longo do tempo e atualmente suporta tecnologias como Java, JDBC, XML, etc.
Conceitos Básicos
Um banco de dados hierárquico consiste de uma coleção de registros que estão conectados através de links. Cada link é uma associação entre precisamente dois registros. Em geral, este modelo é similar ao modelo de Rede, sendo que o que torna os dois modelos diferentes é a estrutura de dados usada para organização do registro.
Para melhor visualização dos conceitos, considere um banco de dados que representa um relacionamento conta-cliente em um sistem bancário. Portanto, existem dois tipos de registros: conta e cliente. O tipo de registro cliente consiste de três campos: customer_name, customer_street e customer_city. Da mesma maneira, o tipo de registro conta possui dois campos: account_number e balance.
Uma instância desse banco de dados aparece na figura H.1. Cada retângulo representa um registro e cada linha representa um link que liga os dois registros. O registro no topo de hierárquia é apenas a raiz da árvore (nível 0), chamado de dummy node. É possível observar que os registros do tipo cliente estão no nível 1 da árvore, enquanto os regitros do tipo conta estão no nível 2. Se um registro cliente está associado a um ou mais registros do tipo conta, então aquele cliente específico possui aquela(s) conta(s). Um banco de dados baseado no modelo hierárquico é uma coleção de tais árvores, portanto formando uma floresta. Uma árvore deste tipo é chamada de database tree.
No caso da figura, o cliente Hayes possui a conta A-102, enquanto o cliente Johnson possui as contas A-101 e A-201 e o cliente Turner possui a conta A-305.
O conteúdo de um determinado registro pode ser repetido em diferentes localizações. Por exemplo, neste sistema bancário do exemplo da figura, uma conta pode pertencer a vários clientes. Portanto, a informação referente a esta determinada conta ou a informação dos vários clientes que possuem esta conta terá de ser repetida. Esta repetição pode ocorrer na mesma árvore ou em diferentes árvores e apresenta duas desvantagens:
- 1. Inconsistência pode surgir com atualizações nos dados do banco
- 2. Desperdício de espaço é inevitável
