Professional Documents
Culture Documents
Andrsa Cibelly
Clbia Alves
Cleyton Vanut
Mouglas Eugnio
Ronnie Edson
2
1 - Modelos de Banco de Dados
4 - O Padro ODMG
5 - Operaes no BDOO
7 Vantagens e Desvantagens
8 - Tendncias
Falta de abordagens
Problemas adequada
atuais no
desenvolvimento Resultados indesejveis
de BD
Ineficincia no atendimento
da demanda
Problemas na manuteno
Banco de Dados Orientados a Objetos
Modelos de Banco de Dados
4
Desvantagens da replicao:
Dificuldades
Caractersticas:
Concorrncia e segurana
Dificuldades
Caractersticas:
Restries:
Caractersticas:
Motivao
Combinao de ideias
dos modelos de dados Crescimento em 2004
tradicionais e linguagens
de Programao OO
BDOO
Conceitos Um SGBDOO prov um identificador nico
(IDO) para cada objeto independente
Bsicos armazenado no BD.
Bsicos i: IDO
c: construtor de tipo
v: estado (ou valor) do objeto
Exemplo
o1=(i1,atom, Houston)
o2=(i2,atom, Bellaire)
o3=(i3,atom, Sugarland)
Banco de Dados Orientados a Objetos
16
Objetos complexos
Bsicos No Estruturados
Requerem grande quantidade de memria.
Estruturados
Possuem uma estrutura definida pela repetida
aplicao dos construtores de tipo providos
pelo SGBDOO.
Banco de Dados Orientados a Objetos
17
So usados em aplicaes que utilizam objetos
complexos
Aplicaes complexas
Lembrando....
BD Relacional BDOO
Caractersticas
Caractersticas do OID
imutvel;
Mtodo consiste de
assinatura e corpo;
O comportamento de um
objeto em um BDOO
representada do por meio de
mtodos .
Classes
Exemplo:
So
agrupamentos
de objetos de
um mesmo tipo,
possuindo
comportamentos
e propriedades
em comum.
Usando um sistema
convencional : Usando o Sistema OO
for x in X do
for x in X do display(x)
begin
case of type(x)
pessoa:
display_pessoa(x);
A operao tem um nico nome
figura: display_figura(x);
e pode ser chamada por vrios
grfico: objetos;
display_grfico(x);
end; O sistema decide qual
end; implementao usar para a
execuo.
Banco de Dados Orientados a Objetos
32
Definio
Um banco de dados
Podem ser definidos como
usualmente mantido e
um BD capaz de armazenar
acessado por meio de
um software conhecido alm de dados, outros tipos
como Sistema diferentes de dados que
Gerenciador de Banco no podem ser convertidos
de Dados (SGBD). somente em arquivos
lineares ou bidimensionais
como tabelas, e sim um
tipo especial de objeto.
Banco de Dados Orientados a Objetos
SGBDOO
33
Caracteristicas
Caracteristicas
Muito usado em percias;
Mais barato do mercado.
Banco de Dados Orientados a Objetos
36
Novas Funcionalidades
Menos trabalho;
Custo-efetividade;
Utiliza a tcnica de BD
GemStone distribudos;
Tiram proveito de
Oracle 10g caractersticas dos sistemas
Oracle o relacionais e do sistema
mais popular orientado a objeto;
banco de
dados
relacional do
mundo para
Caractersticas
aplicaes
transacionais; O banco de dados mais rpido para
aplicaes OLTP;
O banco de dados mais rpido para
aplicaes de datawarehouse;
Banco de dados autogerencivel;
Curso
Oferta
Matricula Professor
EMP
Method : emp
Get_emp#
^emp#
%
Method : emp
Set_emp# : emp#_parm
emp# :=emp#_parm
%
Method : eset
add_emp# : emp#_parm
add_enome# : enome#_parm
add_pos# : pos_parm
| emp_oid |
emp_oid := emp new.
emp_oid set_emp# : emp#_parm;
set_nome : enome parm;
set_pos : pos_parm.
Self add: emp_oid.
Oid_de_conj_de_todos_os_emps
add_emp# : e009
add_enome : helms
add_pos : zelador.
E001 := oid_de_conj_de_todos_os_emps
detect : [:ex | (ex get_emp#)=e001].
oid_de_conj_de_todos_os_emps
remove : e001.
Atributos:
Attribute <tipo> <nome>;
Relaciomentos:
Relationship <rangetype> <nome> [inverse
<nome_classe_inv>::<metodo_inv>]
Rangetype
Declarao:
Set <tipo_conj>
Metodos:
<tipo_retorno> <nome_metodo>
(<lista_parametros>) [raizes(<lista_exceoes>)]
Chaves no so necessrias!
Cliente Pertence
de
agencia _a
idagenci localida
Banco de Dados Orientados a Objetos a 81 de
Entidade cliente em ODL
82
Interface cliente {
Attribute string nome;
Attribute integer ssn;
Attribute string addr {string rua, String cidade, int cep}
endereo:
Relationship set<emprestimo> emprestou
inverse emprestimo :: emprestou:
Relationship set<agencia> tem_conta_em
inverse agencia :: clientes:
Key (ssn)
}
Suporta clausulas
Exemplo:
Uma consulta s
precisa de um objeto
persistente
Set <departamento>
Swizzling
Clustering
Hibernate
Doctrine
Swizzling o processo de
converso entre a
representao persistente
do objeto, na base de
objetos, e sua
representao dinmica,
na linguagem de
programao orientada a
objetos adotada pela
aplicao, onde o objeto
ser efetivamente
manipulado.
Banco de Dados Orientados a Objetos
Swizzling
93
A converso ocorre:
1. No momento em que o objeto transferido
da base de objetos para o espao de
memria da aplicao (checkout);
2. Quando o objeto, j transferido para a
memria, referenciado pela primeira vez
pela aplicao;
3. Se a aplicao o solicita explicitamente; e
4. Quando no possvel reaproveitar um
endereo fsico designado anteriormente, o
qual registrado tambm na base de dados.
Objeto Complexo
Adoo de estratgias de
A
alocao de objetos no D
sistema de
armazenamento de
modo a minimizar a
C
quantidade de pginas
necessrias para
manipular objetos. B
A B C A B C AA AB AC
A1 A2 A3 A B (A.atr)
1. criar as classes ;
2. mapear cada uma das classes feitas;
3. criar os arquivo de configurao do hibernate;
O Doctrine um mapeador de
objetorelacional que utiliza
objetos em PHP.
Banco de Dados Orientados a Objetos 97
Vantagens
98
Entre as tendncias
emergentes neste
contexto est o
armazenamento em
memria.
Prevayler (2006);