Sie sind auf Seite 1von 5

Objetivos

Conocer otros modelos de datos distintos al relacional

Conocer qu posibilidades ofrece los sistemas Orientados a Objetos


Tema 4: Otros modelos de BBDD. El modelo orientado a
Conocer las funcionalidades aadidas en los sistemas
objetos i objeto-relacional (IG18)
Objeto-relacionales.

http://www.unoweb-s.uji.es/IG18

Miguel Prez Francisco

Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 3




ndice Bibliografa
1. Introduccin 5 R. Elmasri i S. B. Navathe. Fundamentos de Sistemas de Bases de
Datos. 3a edicin, Addison-Wesley Ed. [QA76.9.D3 E4618].
2. Modelo Orientado a Objetos 7
2.1. Programacin Orientada a Objetos . . . . . . . . . . . . 10 T. Connolly, C. Begg, A. Strachan. Database Systems.
2.2. Caractersticas de las BBDD OO . . . . . . . . . . . . . . 11 Addison-Wesley Ed. 1997. [QA76.9.D26 C66].
2.3. Creacin de clases . . . . . . . . . . . . . . . . . . . . . 13 M. Celma, J.C. Casamayor, L. Mota Bases de datos relacionales.
2.4. Persistencia . . . . . . . . . . . . . . . . . . . . . . . . 14 Ed. Pentice Hall. [QA76.9.D26 C453]
2.5. Otros conceptos de OO . . . . . . . . . . . . . . . . . . 15

3. Modelo Objeto-relacional 16
3.1. Clasificacin de las aplicaciones (Stonebraker) . . . . . . 17
3.2. Herencia en Postgresql . . . . . . . . . . . . . . . . . . . 18
3.3. SQL3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 4



1 Introduccin 2 Modelo Orientado a Objetos
Modelos de Datos, herramientas que permiten definir la realidad. Han aparecido muchos prototipos OO:
Contenidos de un modelo de datos ORION de MCC, Austin, Texas
Datos. OPENOODB de TI
Datos o entidades.
IRIS de HP
Propiedades de los datos.
Relaciones entre los datos. ODE de ATT Labs. . . .
Restricciones de los datos
Sistemas disponibles en el mercado:
Operaciones para manipular los datos.
GEMSTONE OPAL
El modelo representa entidades genricas > Construccin de
esquemas. ONTOS
Los valores concretos se denominan ocurrencias o instancias > Estado Versant de Versant Object Technologies . . .
de la Base de datos.
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 5 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 7



1 Introduccin (II) 2 Modelo Orientado a Objetos (II)
Modelos tradicionales (relacional, jerrquico y red) han tenido xito en Los Modelos OO se basan en conceptos de la Programacin OO de
aplicaciones tradicionales. los que heredan muchas caractersticas.
Deficiencias en el modelado de datos de aplicaciones ms complejas. Ante la existencia de tantos sistemas, surge la necesidad de un
> Requisitos y Caractersticas diferentes.
modelo estndar.
Modelo Orientado a Objetos (OO) ofrece flexibilidad para cumplir estos
requisitos.
Se define elODMG (Object Database Management Group) por un
consorcio de suministradores y usuarios:
Permiten definir tanto las estructura de los objetos como las operaciones.
ODMG-93 (versin 1.0)
BBDD tradicionales se relacionan mal con aplicaciones orientadas a
ODMG versin 2.0 (versin actual)
objetos.

Las BBDD OO se integran fcilmente con aplicaciones OO.

Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 6 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 8




2 Modelo Orientado a Objetos (II) 2.2 Caractersticas de las BBDD OO

ODMG est formado por: Crear objetos permanentes: persisten


modelo de objetos. Objetos compartidos por distintos programas.
Lenguaje de definicin de objetos. Incluyen mecanismos de indexacin, control de concurrencia y
Lenguaje de consulta de objetos. recuperacin.
Ligaduras con los lenguajes de programacin orientados a Permiten la comunicacin con LP OO.
objetos.
Proporcionan un identificador de objetos nicoa cada objeto (OID).
Estructura de objeto de complejidad arbitraria.
Independencia de datos y operaciones
Herencia: Definicin de nuevos tipos en base a otros ya definidos .
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 9 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 11



2.1 Programacin Orientada a Objetos 2.2 Caractersticas de las BBDD OO

Tipos Abstractos de Datos (TAD) Polimorfismo de Operadores.

Un poco de historia: Definicin dediferentes versiones de un mismo objeto.


SIMULA introduce el concepto de clase > TAD Definicin de relaciones entre objetos mediantereferncias inversas
SMALTALK introduce la herencia (Lenguaje OO puro). utilizando los OIDs.
C++, incluye conceptos de OO al lenguaje C (Lenguaje OO
hbrido).

Un Objeto tiene dos componentes: estado y comportamiento.

Los objetos de un LPOO existen slo durante la ejecucin del


programa.

Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 10 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 12




2.3 Creacin de clases 2.5 Otros conceptos de OO

define class Empleado: Herencia: Jerarqua de tipos.


type tuple( nombre: string;
apellido: string; Herencia mltiple y selectiva
dni: string;
fechanac: Fecha; ); Polimorfismo
operations edad: integer;
Objetos complejos no estructurados: BLOBs (slo las aplicacin que
crear_emp: Empleado;
borrar_emp: boolean; usa los objetos sabe interpretarlos).
end Empleado;
Objetos complejos estructurados: se definen aplicando
Encapsulacin no estricta. Los atributos se dividen en visibles y privados.
repetidamente los constructores de tipos proporcionado por el
Los atributos visibles pueden ser consultados por LP OO
SGBD.
Los atributos ocultos se consultan a travs de las operaciones definidas .
Las actualizaciones del estado de un objeto suelen estar encapsuladas.
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 13 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 15



2.4 Persistencia 3 Modelo Objeto-relacional
Nombramiento: Asignar a un objeto un nombre nico y persistente. Surge como consecuencia de la incorporacin de las caractersticas del
define class ConjuntoEmpleado: modelo OO a los ya existentes sistemas Relacionales: Oracle, informix,
type set(Departamento); Postgresql
operations crear_ce: ConjuntoEmpleado;
borrar_ce: boolean; Soporte de tipos bsicos y complejos (vdeo, audio, documentos de
aadir_emp(e:Empleado); texto, . . . ).
quitar_emp(e:Empleado);
end class ConjuntoEmpleado; Soporte de datos adicionales o extensibles.
persistent name todosLosEmpleados: conjuntoEmpleado;} Soporte para rutinas definidas por el usuario.
Alcanzabilidad: Un objeto B es alcanzable desde un objeto A si una secuencia de
Herencia
referencias conduce de A a B.
emp:=crear_emp; Representacin de atributos multievaluados.
b:=todosLosEmpleados.aadir_emp(emp); Relaciones (tablas) anidadas.
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 14 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 16




3.1 Clasificacin de las aplicaciones (Stonebraker) 3.3 SQL3

Utilizan datos simples, realizan consultas simples (Lenguajes de Aade a SQL, entre otras, orientacin a objetos.
programacin tradicionales). Nuevos tipos de operaciones como SIMILAR que permite comparar
Utilizan datos simples, realizan consultas complejas. (Modelo cadenas de caracteres utilizando expresiones regulares
relacional, Red y Jerrquico) El tipo booleano se ha ampliado con el valor UNKNOWNa
Utilizan datos complejos, realizan consultas simples. (OO, Consultas recursivas.
capacidades de consulta limitadas)
Mejora de la seguridad: roles.
Utilizan datos complejos, realizan consultas complejas. Disparadores como reglas activas: insercin, borrado y actualizacin
(Objeto-relacional) (antes y despus).
a
Ya vimos que Postgresql utilizaba una lgica trivaluada que inclua el valor
desconocido.
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 17 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 19



3.2 Herencia en Postgresql 3.3 SQL3

Facilidades para BBDD distribuidas.


CREATE TABLE ciudades (
codciudad SERIAL,
Estructuras de control.
nombre VARCHAR(30),
habitantes INTEGER,
Soporte Objeto Relacional de SQL3:
altitud INTEGER,
CONSTRAINT cp_ciudades PRIMARY KEY (codciudad));
Datos:
Objetos binarios grandes (LOB) dentro del propio SGBD
Tipo fila: CREATE ROW
CREATE TABLE capitales (
TAD: CREATE TAD
provincia VARCHAR(20))
INHERITS (ciudades); Herencia
Sobrecarga . . .
Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 18 Tema 4: Otros modelos de BBDD. El modelo orientado a objetos i objeto-relacional (IG18) 20

Das könnte Ihnen auch gefallen