Disciplina: Fundamentos de Armazenamento e Manipulação de Dados

Professor: Andre Rodrigo Sanches

 

AULA: MODELOS DE DADOS

Fundamental à estrutura de um banco de dados é o conceito de modelo de dados, uma coleção de ferramentas conceituais para descrição de dados, relacionamentos de dados, semântica de dados e restrições de consistência. Os vários modelos de dados que têm sido propostos dividem-se em três diferentes grupos: modelos lógicos baseados em objetos, modelos lógicos baseados em registros e modelos físicos de dados.

 

MODELOS LÓGICOS BASEADOS EM OBJETOS

Modelos lógicos baseados em objetos são usados na descrição de dados nos níveis conceitual e de visões. Eles se caracterizam pelo fato de fornecerem, de modo conveniente, capacidades de estruturação flexíveis e admitirem restrições de dados para serem explicitamente especificados. Existem muitos modelos diferentes e é possível que outros apareçam. Alguns dos mais conhecidos são:

O modelo entidade-relacionamento tem ganhado ao longo do tempo grande aceitação no projeto de banco de dados, sendo bastante utilizado. O modelo orientado a objetos inclui muitos dos conceitos no modelo entidade-relacionamento, mas representa códigos executáveis assim como dados.

 

Modelo Entidade-Relacionamento (MER)

O modelo entidade-relacionamento é baseado em uma percepção de um mundo real que consiste em uma coleção de objetos básicos chamados entidades, e em relacionamentos entre estes objetos. Uma entidade é um objeto que é distinguível de outro objeto por um conjunto específico de atributos. Por exemplo, os atributos número e saldo descrevem uma conta particular em um banco. Um relacionamento é uma associação entre várias entidades. Por exemplo, um relacionamento ContaCliente associa um cliente a cada conta que ele possui. O conjunto de todas as entidades de um mesmo tipo e o conjunto de relacionamentos do mesmo tipo são denominados conjuntos de entidades e conjuntos de relacionamentos, respectivamente.

Em acréscimo a entidades e relacionamentos, o modelo ER representa certas restrições com os quais os conteúdos de bancos de dados precisam estar de acordo. Uma restrição importante é o mapeamento de cardinalidade (ou multiplicidade de um conjunto de relacionamentos) que expressa o número de entidades ao qual outra entidade pode estar associada via um conjunto de relacionamentos.

A estrutura lógica geral de um banco de dados pode ser expressa graficamente por um diagrama ER, que consiste nos seguintes componentes:

Para ilustrar, considere parte de um sistema de banco de dados de uma instituição bancária, consistindo em clientes e contas que eles possuem. O diagrama ER correspondente é mostrado na figura abaixo.

 

Modelo Orientado a Objeto

Assim como o modelo ER, o modelo orientado a objeto é baseado num conjunto de objetos. Um objeto contém valores armazenados em variáveis de instância dentro do objeto. Contrariamente ao modelo orientado a registros, estes valores são eles mesmos objetos. Então, objetos contêm objetos para um nível arbitrário de encaixamento. Um objeto também possui trechos de código que operam sobre o objeto. Estes trechos de código são chamados métodos.

...

 

MODELOS LÓGICOS BASEADOS EM REGISTROS

Modelos lógicos baseados em registro são usados nas descrições de dados nos níveis conceitual e visual. Em comparação com os modelos de dados baseados em objetos, ambos são usados para especificar a estrutura lógica geral do banco de dados e para fornecer uma descrição de alto nível da implementação.

...

 

Modelo Relacional

O modelo relacional ...

 

 

Modelo de Redes

Os dados ...

 

 

Modelo Hierárquico

O modelo hierárquico ...

 

 

Diferenças entre os modelos

O modelo ...

 

MODELOS FÍSICOS DE DADOS

Os modelos físicos de dados são usados para descrever dados no nível mais baixo. Em comparação com os modelos lógicos de dados, existem poucos modelos físicos em uso. Dois dos mais conhecidos são:

Os modelos físicos captam aspectos da implementação de sistemas de bancos de dados .

 

INSTÂNCIAS E ESQUEMAS

Os bancos de dados mudam através do tempo à medida que informações são inseridas ou apagadas. A coleção de informações armazenadas no banco de dados em um determinado momento é chamada de instância do banco de dados. O projeto geral do banco de dados é chamado de esquema de banco de dados. Os esquemas não mudam com freqüência.

Uma analogia com os conceitos de tipos de dados, variáveis e valores nas linguagens de programação é útil aqui. Voltamos à definição do tipo de registro cliente:

type cliente = record
nome: string; rua: string; cidade: string; end;

Note que declarando o tipo cliente, não declaramos nenhuma variável. Para declarar tais variáveis numa linguagem do tipo Pascal, escrevemos:

var cliente1: cliente;

O conceito de um esquema de banco de dados corresponde à noção de declaração de tipo em linguagens de programação. Uma variável de um dado tipo tem um valor particular em um determinado instante do tempo. Assim o conceito de valor de uma variável na linguagem de programação corresponde ao conceito de uma instância de um esquema de banco de dados.

Os sistemas de bancos de dados possuem diversos esquemas. subdivididos de acordo com os níveis de abstração discutidos anteriormente. No nível mais baixo, está o esquema físico; no nível intermediário, o esquema conceitual; no nível mais alto, um subesquema. Em geral, os sistemas de bancos de dados suportam um esquema físico, um esquema conceitual e diversos subesquemas.

 


Última Atualização: 31/03/2005