SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
Banco de Dados Objeto-Relacional

            Alison A. P. Miazaki
          Filipe M. S. de Campos
            Guilherme A. N. Fré
           Rafael Barbolo Lopes
             Rafael Ivan Garcia
Objetivo
• Apresentar os conceitos de herança e objeto
complexo em um banco de dados objeto-relacional;
• Comparação entre BDOR e BDR;
• Avaliação de SGBDs.
Banco de Dados Relacional (BDR)
• Década de 1970;

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


• Tecnologia madura;

• Performance e eficiência no acesso a dados.
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.
Banco de Dados Objeto-Relacional
             (BDOR)
• Representação de dados complexos e orientação a objetos;

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

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

                BDOO         BDOR

Complexidade
  dos dados
               Sistema
                  de          BDR
               arquivos


                    Complexidade
                     das consultas
Comparação
Crité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     razoavelmente
                                           maduro            novo
uso de SQL                 SQL full        OQL (em gereal,   SQL estendido
                                           não é full)       para objetos
vantagem                   eficiência de   modelo de dados   modelo rico +
                           acesso          rico              eficiência de
                                                             acesso
uso comercial              larga escala    pequena escala    tendência:
                                                             alcançar larga
                                                             escala
Objetos Complexos
• Intrínsecos ao modelo BDOR;

• Encapsulamento de objetos como atributos de outros
objetos;

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

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

• Array: representanção de atributo multivalorado.
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
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
Herança no BDOR
• Tipos de implementação:
    o Herança de Tipo
    o Herança de Tabela


• Tipos de organização:
    o Uma tabela por classe
    o Uma tabela com os atributos de todas as classes
    o Uma tabela para cada classe concreta
Exemplo - Livraria
Herança de Tipo
             Comando: CREATE TYPE <nomeTAD> UNDER <nomeTAD> (...)



CREATE TYPE TPessoa (                    CREATE TYPE TFuncionario UNDER TPessoa (
       nome               VARCHAR(20),          salario            INTEGER,
       cpf                INTEGER,              data_admissao      DATE );
       data_nascimento    DATE );
                                         CREATE TABLE Clientes OF TYPE TCliente;
CREATE TYPE TCliente UNDER TPessoa (
       livros_comprados INTEGER,         CREATE TABLE Funcionarios OF TYPE
       saldo              INTEGER );     TFuncionario;
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
SGBDs
•MySQL e SQL Server:
   oBanco de Dados Relacional
   oHerança implementada com foreign key (visto em aula)
•PostgreSQL:
   oBanco de Dados Objeto Relacional
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
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 Vidal
http://disciplinas.lia.ufc.br/bdnc061/arquivos/parteI.ppt

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

Contenu connexe

Tendances

Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosBanco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosNatanael Simões
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Ricardo Terra
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Leinylson Fontinele
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Visão Geral: Estruturas do Sistema Operacional
Visão Geral: Estruturas do Sistema OperacionalVisão Geral: Estruturas do Sistema Operacional
Visão Geral: Estruturas do Sistema OperacionalAlexandre Duarte
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Leinylson Fontinele
 
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...Marcello Thiry
 
Padrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - BrokerPadrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - BrokerEduardo Nicola F. Zagari
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosMauro Pereira
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoVinícius de Paula
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)Janynne Gomes
 
Topologia em redes
Topologia em redesTopologia em redes
Topologia em redesYohana Alves
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScriptCarlos Eduardo Kadu
 

Tendances (20)

Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de DadosBanco de Dados - Sistemas de Gerenciamento de Banco de Dados
Banco de Dados - Sistemas de Gerenciamento de Banco de Dados
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Aula 7 banco de dados
Aula 7   banco de dadosAula 7   banco de dados
Aula 7 banco de dados
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
Uml
UmlUml
Uml
 
Linguagem SQL
Linguagem SQLLinguagem SQL
Linguagem SQL
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Visão Geral: Estruturas do Sistema Operacional
Visão Geral: Estruturas do Sistema OperacionalVisão Geral: Estruturas do Sistema Operacional
Visão Geral: Estruturas do Sistema Operacional
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
 
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
 
Padrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - BrokerPadrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - Broker
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
Topologia em redes
Topologia em redesTopologia em redes
Topologia em redes
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 

En vedette

Banco de dados orientado a objetos
Banco de dados orientado a objetosBanco de dados orientado a objetos
Banco de dados orientado a objetosStefan Horochovec
 
Modelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e HierárquicoModelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e Hierárquicorosimaracorsino
 
Trabalho banco de dados orientado a objetos
Trabalho banco de dados orientado a objetosTrabalho banco de dados orientado a objetos
Trabalho banco de dados orientado a objetoseneck
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dadosEdgar Stuart
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalizaçãoLuan Caldas
 
Banco de dados orientados a objetos
Banco de dados orientados a objetos Banco de dados orientados a objetos
Banco de dados orientados a objetos Raquel Machado
 
Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendaçãoRafael Barbolo
 
BD Orientado a Objetos Versant
BD Orientado a Objetos VersantBD Orientado a Objetos Versant
BD Orientado a Objetos VersantAdail Viana Neto
 
Banco de Dados Distribuídos
Banco de Dados DistribuídosBanco de Dados Distribuídos
Banco de Dados DistribuídosAdail Viana Neto
 
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...Natanael Simões
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação finalRenan Levy
 
Padronização de Nomenclatura para Banco de Dados
Padronização de Nomenclatura para Banco de DadosPadronização de Nomenclatura para Banco de Dados
Padronização de Nomenclatura para Banco de DadosSamuelson Brito
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objetoelliando dias
 

En vedette (20)

Banco de dados orientado a objetos
Banco de dados orientado a objetosBanco de dados orientado a objetos
Banco de dados orientado a objetos
 
Modelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e HierárquicoModelo Relacional, Rede e Hierárquico
Modelo Relacional, Rede e Hierárquico
 
Trabalho banco de dados orientado a objetos
Trabalho banco de dados orientado a objetosTrabalho banco de dados orientado a objetos
Trabalho banco de dados orientado a objetos
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dados
 
Banco de Dados Relacional Estendido
Banco de Dados Relacional EstendidoBanco de Dados Relacional Estendido
Banco de Dados Relacional Estendido
 
Aula 06 normalização
Aula 06 normalizaçãoAula 06 normalização
Aula 06 normalização
 
02 banco de dados relacional
02 banco de dados relacional02 banco de dados relacional
02 banco de dados relacional
 
Banco de dados orientados a objetos
Banco de dados orientados a objetos Banco de dados orientados a objetos
Banco de dados orientados a objetos
 
Sistemas de recomendação
Sistemas de recomendaçãoSistemas de recomendação
Sistemas de recomendação
 
BD Orientado a Objetos Versant
BD Orientado a Objetos VersantBD Orientado a Objetos Versant
BD Orientado a Objetos Versant
 
Banco de Dados Relacional Estendido
Banco de Dados Relacional EstendidoBanco de Dados Relacional Estendido
Banco de Dados Relacional Estendido
 
Banco de Dados 2: Controle de Concorrência
Banco de Dados 2: Controle de ConcorrênciaBanco de Dados 2: Controle de Concorrência
Banco de Dados 2: Controle de Concorrência
 
Banco de Dados Distribuídos
Banco de Dados DistribuídosBanco de Dados Distribuídos
Banco de Dados Distribuídos
 
O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?
 
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...
Banco de Dados - Introdução: Participação dos bancos de dados no desenvolvime...
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação final
 
Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 
Padronização de Nomenclatura para Banco de Dados
Padronização de Nomenclatura para Banco de DadosPadronização de Nomenclatura para Banco de Dados
Padronização de Nomenclatura para Banco de Dados
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objeto
 
Bancodedados
BancodedadosBancodedados
Bancodedados
 

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

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

SQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigDataSQL Server Heterogêneo: SQL Server + BigData
SQL Server Heterogêneo: SQL Server + BigData
 
Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)
 
Bd ii material
Bd ii   materialBd ii   material
Bd ii material
 
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
 
5 bdoo+bdor
5 bdoo+bdor5 bdoo+bdor
5 bdoo+bdor
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
 
Sql
SqlSql
Sql
 
Data WareHOuse
Data WareHOuseData WareHOuse
Data WareHOuse
 
6338 111121071604-phpapp01
6338 111121071604-phpapp016338 111121071604-phpapp01
6338 111121071604-phpapp01
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Aula8.pptx
Aula8.pptxAula8.pptx
Aula8.pptx
 
Introdução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel BrandãoIntrodução ao Banco de dados - Prof. Daniel Brandão
Introdução ao Banco de dados - Prof. Daniel Brandão
 
SQL Oracle
SQL OracleSQL Oracle
SQL Oracle
 
Express2012simples 130312140529-phpapp01
Express2012simples 130312140529-phpapp01Express2012simples 130312140529-phpapp01
Express2012simples 130312140529-phpapp01
 
Bancos de Dados para Bibliotecarios
Bancos de Dados para BibliotecariosBancos de Dados para Bibliotecarios
Bancos de Dados para Bibliotecarios
 
13 banco-de-dados
13 banco-de-dados13 banco-de-dados
13 banco-de-dados
 
Db4ofavi
Db4ofaviDb4ofavi
Db4ofavi
 
Modulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxModulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptx
 
Introdução a banco de dados
Introdução a banco de dadosIntrodução a banco de dados
Introdução a banco de dados
 
Banco de Dados - NoSQL
Banco de Dados - NoSQLBanco de Dados - NoSQL
Banco de Dados - NoSQL
 

Plus de Rafael Barbolo

Aleph - Sistema de Monitoramento Visual de Pessoas
Aleph - Sistema de Monitoramento Visual de PessoasAleph - Sistema de Monitoramento Visual de Pessoas
Aleph - Sistema de Monitoramento Visual de PessoasRafael Barbolo
 
Robôs, CN e CNC - Automação de manufatura
Robôs, CN e CNC - Automação de manufaturaRobôs, CN e CNC - Automação de manufatura
Robôs, CN e CNC - Automação de manufaturaRafael Barbolo
 
Dependabilidade e Segurança
Dependabilidade e SegurançaDependabilidade e Segurança
Dependabilidade e SegurançaRafael Barbolo
 
Arquitetura de Cluster do Google
Arquitetura de Cluster do GoogleArquitetura de Cluster do Google
Arquitetura de Cluster do GoogleRafael Barbolo
 
Privilégios de processos no OpenSolaris
Privilégios de processos no OpenSolarisPrivilégios de processos no OpenSolaris
Privilégios de processos no OpenSolarisRafael Barbolo
 
Projeto de Banco De Dados - Upcoming Events
Projeto de Banco De Dados - Upcoming EventsProjeto de Banco De Dados - Upcoming Events
Projeto de Banco De Dados - Upcoming EventsRafael Barbolo
 
Monitoramento de System Calls com DTrace
Monitoramento de System Calls com DTraceMonitoramento de System Calls com DTrace
Monitoramento de System Calls com DTraceRafael Barbolo
 

Plus de Rafael Barbolo (8)

Aleph - Sistema de Monitoramento Visual de Pessoas
Aleph - Sistema de Monitoramento Visual de PessoasAleph - Sistema de Monitoramento Visual de Pessoas
Aleph - Sistema de Monitoramento Visual de Pessoas
 
Computação em Nuvem
Computação em NuvemComputação em Nuvem
Computação em Nuvem
 
Robôs, CN e CNC - Automação de manufatura
Robôs, CN e CNC - Automação de manufaturaRobôs, CN e CNC - Automação de manufatura
Robôs, CN e CNC - Automação de manufatura
 
Dependabilidade e Segurança
Dependabilidade e SegurançaDependabilidade e Segurança
Dependabilidade e Segurança
 
Arquitetura de Cluster do Google
Arquitetura de Cluster do GoogleArquitetura de Cluster do Google
Arquitetura de Cluster do Google
 
Privilégios de processos no OpenSolaris
Privilégios de processos no OpenSolarisPrivilégios de processos no OpenSolaris
Privilégios de processos no OpenSolaris
 
Projeto de Banco De Dados - Upcoming Events
Projeto de Banco De Dados - Upcoming EventsProjeto de Banco De Dados - Upcoming Events
Projeto de Banco De Dados - Upcoming Events
 
Monitoramento de System Calls com DTrace
Monitoramento de System Calls com DTraceMonitoramento de System Calls com DTrace
Monitoramento de System Calls com DTrace
 

Dernier

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuisKitota
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx2m Assessoria
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfSamaraLunas
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 

Dernier (9)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 

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

  • 1. Banco de Dados Objeto-Relacional Alison A. P. Miazaki Filipe M. S. de Campos Guilherme A. N. Fré Rafael Barbolo Lopes Rafael Ivan Garcia
  • 2. Objetivo • Apresentar os conceitos de herança e objeto complexo em um banco de dados objeto-relacional; • Comparação entre BDOR e BDR; • Avaliação de SGBDs.
  • 3. Banco de Dados Relacional (BDR) • Década de 1970; • Tabelas bi-direcioanais; o Linhas: elementos de relações o Colunas: atributos • Tecnologia madura; • Performance e eficiência no acesso a dados.
  • 4. 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.
  • 5. Banco de Dados Objeto-Relacional (BDOR) • Representação de dados complexos e orientação a objetos; • Eficiência no gerenciamento de tabelas relacionais e acesso a objetos complexos; • Atende aos requisitos de agregação, composição e herança das novas aplicações.
  • 6. Comparação BDOO BDOR Complexidade dos dados Sistema de BDR arquivos Complexidade das consultas
  • 7. Comparação Crité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 razoavelmente maduro novo uso de SQL SQL full OQL (em gereal, SQL estendido não é full) para objetos vantagem eficiência de modelo de dados modelo rico + acesso rico eficiência de acesso uso comercial larga escala pequena escala tendência: alcançar larga escala
  • 8. Objetos Complexos • Intrínsecos ao modelo BDOR; • Encapsulamento de objetos como atributos de outros objetos; • Base para o suporte a agregação e composição; • Row: representação de atributo composto por vários atributos; • Array: representanção de atributo multivalorado.
  • 9. 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
  • 10. 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
  • 11. Herança no BDOR • Tipos de implementação: o Herança de Tipo o Herança de Tabela • Tipos de organização: o Uma tabela por classe o Uma tabela com os atributos de todas as classes o Uma tabela para cada classe concreta
  • 13. Herança de Tipo Comando: CREATE TYPE <nomeTAD> UNDER <nomeTAD> (...) CREATE TYPE TPessoa ( CREATE TYPE TFuncionario UNDER TPessoa ( nome VARCHAR(20), salario INTEGER, cpf INTEGER, data_admissao DATE ); data_nascimento DATE ); CREATE TABLE Clientes OF TYPE TCliente; CREATE TYPE TCliente UNDER TPessoa ( livros_comprados INTEGER, CREATE TABLE Funcionarios OF TYPE saldo INTEGER ); TFuncionario;
  • 14. 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
  • 15. SGBDs •MySQL e SQL Server: oBanco de Dados Relacional oHerança implementada com foreign key (visto em aula) •PostgreSQL: oBanco de Dados Objeto Relacional
  • 16. 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
  • 17. 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 Vidal http://disciplinas.lia.ufc.br/bdnc061/arquivos/parteI.ppt • BD Objeto-Relacional – Ronaldo dos Santos Mello http://www.inf.ufsc.br/~ronaldo/ine5342/bdor.pdf