Introdução
• Bases de dados orientados a objectos são actualmente conhecidos com bases de
dados de objectos (BDO)
• Seus SGBDs são conhecidos como Sistemas de Gestão de Dados de Objectos
(SGDO)
• Foram feitos para atender a necessidades de aplicações mais complexas
Estruturas mais complexas para objectos armazenados
Novos tipos de dados para armazenar imagens, videos
ou textos grandes
Transacções de maior duração
Operações específicas da aplicação
1
Introdução
• Duas vertentes de desenvolvimento
Base de dados de objecto “puro”
• Vários protótipos experimentais Foram desenvolvidos vários
Orion, Ode, GemStone, ONTOS, Versant, ObjectStore, Ardent(O2)
• Padrão ODMG (Object Data management group)
Base de dados de objecto-relacional
• Incorporação de recursos propostos para BDO em SGBD relacional
• Recursos incluídos no padrão SQL
2
Conceitos de Banco de Dados de Objectos
• Um Objecto possui dois componentes
• Estado (Valor)
• Comportamento (Operações)
• Uma Operação é definida em duas partes:
• Assinatura (Ou Inteface)
Especifica o nome e seus parâmetros
• Método (Ou Corpo)
Especifica sua implementação
Escrita em uma linguagem de programação
3
Conceitos de Banco de Dados de Objectos
• Herança
• Permite a especificação de novos tipos ou classes que herdam grande parte
da sua estrutura e/ou operações de tipos ou classes previamente definidos
• Permite reutilização
• Sobrecarga do Operador
• Capacidade de uma operação de ser aplicada a diferentes tipos de objectos
• Um nome de operação pode se referir a varias implementações distintas
• Recurso conhecido como polimorfismo de operador
4
Identidade de Objectos versus Literais
• Identificador de Objecto (OID)
Cada Objecto armazenado tem uma identificação
Imutável
Não visível ao usuário externo
Usado para referenciar um objecto
• Literal (Ou Valor)
Não tem OID
Armazenado dentro do Objecto
Não pode ser referenciado de outros objectos
5
Extrutura de Tipos Complexas
6
Extrutura de Tipos Complexas
7
Extrutura de Tipos Complexas