Objetos em Bancos de Dados Relacionais Alcides Calsavara.

Slides:



Advertisements
Apresentações semelhantes
Modelo Relacional e Transformação DER x Relacional
Advertisements

Transformação ODMG  Relacional
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Estudo de Caso, modelo Oracle 10g
Banco de Dados I I Banco de Dados - Conceitos e Definições
Evolução dos SGBD’s (2ª Parte).
MODELO RELACIONAL Transparências baseadas no capítulo 3 do livro de KORTH e SILBERCHATZ e capítulo 7 do livro de ELMASRI e NAVATHE Juliana Amaral e Rodrigo.
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Prof.: Bruno Rafael de Oliveira Rodrigues
Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
Prof.: Bruno Rafael de Oliveira Rodrigues
Mapeamento ER-Relacional
Maurício Edgar Stivanello
Modelo Relacional Professor Edson Emílio Scalabrin telefone: 0xx download:
Sistema Gerenciador de Banco de Dados SGBD
Sistema Gerenciador de Banco de Dados SGBD
Objeto-Relacional Prof. Edson E. Scalabrin Telefone: 0xx
Transformando o Modelo E-R no Modelo Relacional
Mapeamento Objeto Relacional
Modelo Relacional parte 1
Introdução à Engenharia da Computação
Oficina sobre banco de dados
FRB - Maio 2002MCS9–1 Regras (Restrições) de Integridade Sistemas comerciais relacionais são muito finos de restrições para garantir a qualidade dos dados.
Linguagem de Banco de Dados - SQL
Modelo relacional noções básicas tradução do modelo de objectos
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
Mapeamento de Objetos para Tabelas Relacionais
Prof. Alfredo Parteli Gomes
SQL Server 2012 Introdução a Modelagem de Dados
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Transformação ODMG Relacional. Implementação Relacional de BDs OO Transformação Esquema Objeto Esquema Relacional Transformação Esquema Objeto Esquema.
Banco de Dados Aplicado ao Desenvolvimento de Software - BDD
Mapeamento de Objetos para o Modelo Relacional - Introdução
III – Oracle10g Apontadores – Tipo de Dado (REF).
III – O Modelo OR Estudo de Caso, modelo Oracle 10g.
Desenvolvendo um script SQL
Banco de dados.
Baseado no material do Professor Raul Paradeda
A abordagem de banco de dados para gerenciamento de dados
PostGres: Um Banco de Dados Orientado a Objetos
Objetivos Apresentar de forma breve a Metodologia de Modelagem Orientada a Objetos (OMT). A partir de um modelo de objetos de um sistema de informação.
Profa. Ana Karina Barbosa Abril/2008
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Sarajane Marques Peres
TECNOLOGIAS E LINGUAGENS PARA BANCO DE DADOS I
Banco de Dados I I Comandos SQL
1 24/4/ :29 FMU – 1. Semestre – Tecnologia – Analise e Desenvolvimento de Sistemas Professor: Eduardo Silvestri Aluno:Clóvis de Oliveira- RA
III - Oracle9i Apontadores – Tipo de Dado (REF). Identificador de Objeto A todo objeto de uma “object table” é associado um OID (“Object IDentifier”)
Equipe de monitoria Aula prática 4.  Tipos  Tabela de Objetos  Herança  Métodos  Referências  Coleções  Composição de coleções  Conectividade.
1 Introdução à Manipulação de Dados SQL – Structured Query Language  Tabela = Relação  DDL – Data Definition Language  Sub-conjunto do SQL que suporta.
Profa. Ana Karina Barbosa Abril/2008
Modelo Relacional Marcelo Mendes Manaus – 2015.
SISTEMAS DE INFORMAÇÃO Prof. Paulo Renato de Morais.
Professor Me. Jeferson Bussula Pinheiro.
Daniel Paulo Introdução Neste capítulo trataremos a relação entre tabelas e FILEGROUPS, bem como a alocação interna de dados.
UCSal – Bacharelado em Informática
Introdução a Bancos de Dados (BD’s)
Hibernate – componentes, herança, e associações Jobson Ronan
Projetar Base de Dados. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar base de dados | 2 Objetivos deste.
Modelo Relacional, Chaves e Relacionamentos
Diagrama de Classes Herança Dependências.
Transformação ODMG  Relacional. Implementação Relacional de BDs OO Transformação Esquema Objeto  Esquema Relacional.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
CIn-UFPE1 Projeto de Gerenciamento de Dados. CIn-UFPE2 Objetivos n Definir o que significa gerenciamento de dados do sistema; n Entender abordagens diferentes.
Modelo Relacional Introduzido por Ted Codd, da IBM Research, em Utiliza o conceito de relação matemática. Possui base teórica na teoria dos conjuntos.
Professor: reno nooblath
Modelagem de Dados Aula 3.
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Objetos em Bancos de Dados Relacionais Alcides Calsavara

Vantagens de BD n recuperação em caso de falha n compartilhamento entre usuários n compartilhamento entre aplicações n segurança n integridade n extensibilidade n distribuição de dados

Conceitos de BD relacionais n Partes de um RDBMS: –dados que são apresentados como tabelas –operadores para manipulação de tabelas –regras de integridade para as tabelas

Estrutura lógica de um RDBMS n coleção de tabelas n cada tabela tem um determinado número de colunas e um número qualquer de linhas n colunas são chamadas de atributos n linhas são chamadas de tuplas n cada atributo tem um domínio: conjunto de valores legais

Operadores de RDBMS n SQL: –SELECT... FROM... WHERE... –CREATE TABLE... –INSERT ROW... INTO TABLE... –DELETE ROW... FROM TABLE... SET-ORIENTED

Integridade em RDBMS n Integridade de entidade: cada tabela tem exatamente uma chave-primária chave-primária : combinação de um ou mais atributos cujo valor identifica unicamente cada linha em uma tabela

Integridade em RDBMS (cont.) n Integridade referencial: cada chave estrangeira deve ser consistente com sua correspondente chave primária chave estrangeira: é uma chave primária de uma tabela embutida em outra (ou na mesma) tabela

Formas normais n primeira: nenhum atributo contém um grupo de valores n segunda: cada tupla deve ter uma chave primária n terceira: cada atributo depende diretamente da chave primária

OID como chave primária n Mapeamento classe-tabela –há uma tabela para cada classe –cada tupla corresponde ao estado de uma instância (objeto) da classe –a chave primária da tupla é a OID do correspondente objeto

OID como chave primária (cont.) n Mapeamento associação-tabela –há uma tabela para cada associação entre classes –cada tupla corresponde a uma ligação entre instâncias (objetos) das classes associadas –a chave primária da tupla é composta pelas OIDs dos objetos ligados

OID como chave primária (cont.) n vantagem: associações são implementadas de forma independente de propriedades de objetos e, portanto, não requer atualização quando objetos são modificados

OID como chave primária (cont.) n desvantages: –RDBMS não gerencia OID: pode haver ineficiência e desperdício de espaço –a teoria relacional diz que dados são manipulados de acordo com seus atributos: OID é um artefato de implementação que RDBMS tenta eliminar

OID como chave primária (cont.) n quando usar? –use quando o acesso ao banco de dados é restrito a programas contornar deficiências do RDBMS garantir integridade prover interface de usuário –não use quando o acesso ao banco de dados é feito diretamente por usuários interpretador SQL

Mapeamento classe-tabela nome: Nome endereço: Endereço Pessoa

Mapeamento classe-tabela (cont.)

CREATE TABLE Pessoa (oidchar(40)not null, nomechar(30)not null, endereçochar(50) PRIMARY KEY (oid) );

Mapeamento associação-tabela n Tipos de associação: –binária: muitos para muitos um para muitos um para um –ternária –...

Associação binária muitos-para-muitos

Associação binária muitos-para-muitos (cont.)

CREATE TABLE Trabalha-para (empresa-oidchar(40)not null, pessoa-oidchar(40)not null, salariodouble, PRIMARY KEY (empresa-oid, pessoa-oid), FOREIGN KEY (empresa-oid) REFERENCES Empresa, FOREIGN KEY (pessoa-oid) REFERENCES Pessoa );

Associação binária um-para-muitos

Associação binária um-para-muitos (cont.)

n vantagens da junção de tabelas: –menos tabelas –melhor desempenho devido ao menor número de tabelas para navegar

Associação binária um-para-muitos (cont.) n desvantagens da junção de tabelas: –menos rigor de design: um objeto contém informação sobre outro objeto (contra a idéia de encapsulamento) –extensibilidade reduzida: se a multiplicade mudar para muitos-para- muitos então as tabelas devem mudar –mais complexidade: a representação assimétrica complica operações de busca e atualização

Mapeamento de generalização n ABORDAGENS: –(T) cada classe (superclasse e subclasse) é mapeada para uma tabela –(C) somente cada classe concreta é mapeada para uma tabela –(R) somente a classe raiz da hierarquia é mapeada para uma tabela

Mapeamento de generalização (cont.)

Mapeamento de generalização - abordagem T -

Mapeamento de generalização - abordagem T - (cont.)

Mapeamento de generalização - abordagem C -

Mapeamento de generalização - abordagem C - (cont.)

Mapeamento de generalização - abordagem R -

Mapeamento de generalização - comparação de abordagens - n abordagem T: –mais genérica –mais extensibilidade –maior número de tabelas para gerenciar –maior número de tabelas para navegar –risco de inconsistência: um mesmo objeto pode aparecer em mais de uma tabela correspondente a subclasse

Mapeamento de generalização - comparação de abordagens - n abordagem C: –obedece a terceira forma normal –replica atributos de superclasses –não há como garantir que um atributo que é "chave primária" em uma superclasse não será duplicado nas diversas tabelas das subclasses

Mapeamento de generalização - comparação de abordagens - n abordagem R: –tabela não está na terceira forma normal –desperdício de espaço –pode ter bom desempenho