18
Banco de Dados Objeto-Relacional Alison A. P. Miazaki Filipe M. S. de Campos Guilherme A. N. Fré Rafael Barbolo Lopes Rafael Ivan Garcia

Herança em Banco de Dados Objeto-Relacional (BDOR)

Embed Size (px)

Citation preview

Page 1: Herança em Banco de Dados Objeto-Relacional (BDOR)

Banco de Dados Objeto-Relacional

Alison A. P. MiazakiFilipe M. S. de Campos

Guilherme A. N. FréRafael Barbolo Lopes

Rafael Ivan Garcia

Page 2: Herança em Banco de Dados Objeto-Relacional (BDOR)

Objetivo

• Apresentar os conceitos de herança e objetocomplexo em um banco de dados objeto-relacional;• Comparação entre BDOR e BDR;• Avaliação de SGBDs.

Page 3: Herança em Banco de Dados Objeto-Relacional (BDOR)

Banco de Dados Relacional (BDR)

• Década de 1970;

• Tabelas bi-direcioanais;o Linhas: elementos de relaçõeso Colunas: atributos

• Tecnologia madura;

• Performance e eficiência no acesso a dados.

Page 4: Herança em Banco de Dados Objeto-Relacional (BDOR)

Banco de Dados Orientado a Objeto (BDOO)

• Candidato a substituto do BDR;

• Representação de dados complexos e orientação a objetos;

• Definição de novos tipos de dados;

• Suporte a herança;

• Performance inferior.

Page 5: Herança em Banco de Dados Objeto-Relacional (BDOR)

Banco de Dados Objeto-Relacional (BDOR)

• Representação de dados complexos e orientação a objetos;

• Eficiência no gerenciamento de tabelas relacionais e acessoa objetos complexos;

• Atende aos requisitos de agregação, composição e herançadas novas aplicações.

Page 6: Herança em Banco de Dados Objeto-Relacional (BDOR)

Comparação

BDOO BDOR

Sistemade

arquivosBDR

Complexidadedos dados

Complexidadedas consultas

Page 7: Herança em Banco de Dados Objeto-Relacional (BDOR)

ComparaçãoCritério BDR BDOO BDOR

padrão SQL-2 ODMG 3.0 SQL-3

suporte a dados complexo não sim sim

performance alta baixa espera-se que seja alta

maturidade maduro razoavelmente maduro

razoavelmente novo

uso de SQL SQL full OQL (em gereal,não é full)

SQL estendido para objetos

vantagem eficiência de acesso

modelo de dados rico

modelo rico + eficiência de acesso

uso comercial larga escala pequena escala tendência: alcançar larga escala

Page 8: Herança em Banco de Dados Objeto-Relacional (BDOR)

Objetos Complexos

• Intrínsecos ao modelo BDOR;

• Encapsulamento de objetos como atributos de outrosobjetos;

• Base para o suporte a agregação e composição;

• Row: representação de atributo composto por váriosatributos;

• Array: representanção de atributo multivalorado.

Page 9: Herança em Banco de Dados Objeto-Relacional (BDOR)

Row - Exemplo

CREATE TABLE Pessoa (nome VARCHAR(40),data_nascimento Row ( dia VARCHAR(2),

mes VARCHAR(2),ano VARCHAR(4))

);

nome data_nascimento

dia mes ano

Paulo 10 08 1976

Maria 23 04 1980

Page 10: Herança em Banco de Dados Objeto-Relacional (BDOR)

Array - Exemplo

CREATE TABLE Pessoa (nome VARCHAR(40),telefones ARRAY(5));

INSER INTO Pessoa VALUES (‘Paulo’, ARRAY *‘34567899’, ‘51834567’, ‘98451233’+);

nome telefones

0 1 2 3 4

Paulo 34567899 51834567 98451233

Page 11: Herança em Banco de Dados Objeto-Relacional (BDOR)

Herança no BDOR

• Tipos de implementação:o Herança de Tipoo Herança de Tabela

• Tipos de organização:o Uma tabela por classeo Uma tabela com os atributos de todas as classeso Uma tabela para cada classe concreta

Page 12: Herança em Banco de Dados Objeto-Relacional (BDOR)

Exemplo - Livraria

Page 13: Herança em Banco de Dados Objeto-Relacional (BDOR)

Herança de TipoComando: CREATE TYPE <nomeTAD> UNDER <nomeTAD> (...)

CREATE TYPE TPessoa (nome VARCHAR(20),cpf INTEGER,data_nascimento DATE );

CREATE TYPE TCliente UNDER TPessoa (livros_comprados INTEGER,saldo INTEGER );

CREATE TYPE TFuncionario UNDER TPessoa (salario INTEGER,data_admissao DATE );

CREATE TABLE Clientes OF TYPE TCliente;

CREATE TABLE Funcionarios OF TYPE TFuncionario;

Page 14: Herança em Banco de Dados Objeto-Relacional (BDOR)

Herança de Tabelas

Comando: CREATE TABLE <nomeTab> UNDER <nomeTab> (...)

CREATE TABLE Pessoas OF TYPE TPessoa

CREATE TABLE Clientes OF TYPE TCliente UNDER Pessoas

CREATE TABLE Funcionarios OF TYPE TFuncionario UNDER Pessoas

Page 15: Herança em Banco de Dados Objeto-Relacional (BDOR)

SGBDs

•MySQL e SQL Server:oBanco de Dados RelacionaloHerança implementada com foreign key (visto em aula)

•PostgreSQL:oBanco de Dados Objeto Relacional

Page 16: Herança em Banco de Dados Objeto-Relacional (BDOR)

PostgreSQL - BDOR

•Características suportadas:•Tipo•Método•Herança de tipo•Herança de tabela

•Estruturas de dados suportadas:•Array•List•Set•Multiset•Referência a um objeto

Page 17: Herança em Banco de Dados Objeto-Relacional (BDOR)

Bibliografia• Banco de Dados Objeto-Relacional (BDOR) – André de A. Fonseca, Antonio de A. Souza Neto, Lucas T. de Souza, Tasso L. Dourado. http://im.ufba.br/pub/MATA60/WebHome/BDOR_2007.2.pdf

• Banco de Dados Objetos-Relacionados (BDOR) – Daniela Soares Feitosa, Helder Santana de Jesus, Moisés Araujo Machado, Suelen Dias de Alencar.http://im.ufba.br/pub/MATA60/WebHome/BDOR.pdf

• Banco de Dados Objeto-Relacional (BDOR) – Nilton Aquino das Neves, Gabriel Almeida Rocha, Alonso de Oliveira Segundo.http://im.ufba.br/pub/MATA60/WebHome/BDOR_2008.1.pdf

• Banco de Dados Objeto-Relacional – Vânia Maria Ponte Vidalhttp://disciplinas.lia.ufc.br/bdnc061/arquivos/parteI.ppt

• BD Objeto-Relacional – Ronaldo dos Santos Mellohttp://www.inf.ufsc.br/~ronaldo/ine5342/bdor.pdf

Page 18: Herança em Banco de Dados Objeto-Relacional (BDOR)

Obrigado!