Sie sind auf Seite 1von 16

ESCUELA SUPERIOR DE INFORMTICA DE CIUDAD REAL

Funcionalidad 1

Modelos de Bases de Datos Orientadas a Objetos y Bases de Datos Objeto-Relacionales

Virginia Arcos Muoz ngel Escribano Santamara Silvia Lpez Utrilla Roco Pea Gallego Sergio Susn Martnez Francisco Antonio Utrilla Requena

Ciudad Real, 08 de febrero de 2008

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

ndice
Introduccin ..................................................................................................................................3 Bases de Datos Orientadas a Objetos .............................................................................................3 Modelo de Objetos ....................................................................................................................3 Estndares de bases de datos de objetos ...................................................................................7 Ejemplo......................................................................................................................................8 Bases de Datos Objetos - Relacionales .........................................................................................10 Modelo Objeto - Relacional ......................................................................................................10 Ejemplo....................................................................................................................................14 Comparativa entre modelos .........................................................................................................15 Bibliografa...................................................................................................................................16

Tabla de Ilustraciones
Ilustracin 1.- Diagrama de Ejemplo. ..............................................................................................9 Ilustracin 2.- Ejemplo Tipos Distintos. .........................................................................................11 Ilustracin 3.- Ejemplo Tipos Estructurados. .................................................................................12 Ilustracin 4.- Ejemplos Tipos ROW y ARRAY. ...............................................................................13 Ilustracin 5.- Ejemplo de Herencia. .............................................................................................14

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Introduccin
A finales de los aos 80 y a principios de los 90, los expertos en base de datos enfrentaron requerimientos de datos cada vez ms complejos que eran difciles de manejar con la tecnologa que exista en esos momentos. La composicin cambiante de los datos modelados la base de datos podra incluir grficos, vdeo, audio, diagramas, huellas digitales y sonido, as como nmeros y texto- motiv a reorganizar los sistemas de bases de datos existentes. Este esfuerzo de reorganizacin condujo a una nueva oleada de tecnologas basadas en conceptos de programacin orientados a objetos, y a la adicin de nuevas caractersticas a las bases de datos relacionales que permitieron manejar mejor los datos complejos. Dentro de estas nuevas tecnologas que aparecieron, este trabajo se centra en las bases de datos objeto-relacionales y orientadas a objetos.

Bases de Datos Orientadas a Objetos


La orientacin a objetos es una metodologa de modelado y desarrollo basada en conceptos orientados a objetos (OO). En concreto, la orientacin a objetos se define como un conjunto de principios de diseo y desarrollo basados en estructuras de computadoras conceptualmente autnomas conocidas como objetos. Cada objeto representa una entidad del mundo real con la capacidad de actuar consigo misma y de interactuar con otros objetos. Teniendo en cuenta este concepto, las bases de datos orientadas a objetos (OODB) estn diseadas para capturar los datos de un sistema de negocio, que puede ser considerado como un conjunto de objetos que interactan entre s.

Modelo de Objetos
Para las OODB no ha existido un nico modelo de datos, anlogo al modelo relacional difundido por Dr. Codd, sino que cada autor ha adoptado un modelo diferente. El modelo orientado a objetos (OODM) que aqu se presenta tiene mucho en comn con los modelos de datos relacionales o E-R, tambin tiene algunas diferencias fundamentales. El resumen siguiente est diseado para ofrecer algunas comparaciones detalladas que aclaran las caractersticas de OODM que se presenta en este apartado.

Objeto, entidad y tupla


El concepto OODM de objeto va ms all del concepto de entidad o tupla en otros modelos de datos. Un objeto OODM tiene caractersticas adicionales a las de las entidades o tuplas, como comportamiento, herencia y encapsulado. Tales caractersticas OODM hacen que el modelado OO

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

sea ms natural que el modelado E-R y relacional. De hecho, los modelos E-R y relacionales a menudo obligan al diseador a crear entidades nuevas artificiales para representar entidades reales.

Atributos
Los objetos son descritos por sus atributos, conocidos como variables de instancia en un ambiente OO. Cada atributo tiene un nombre nico y un tipo de datos asociado a l. Los atributos tambin tienen un dominio. El dominio agrupa y describe lgicamente el conjunto de todos los valores posibles que un atributo puede tener. Es importante puntualizar que, al igual que en el modelo E-R, el atributo de un objeto puede tener un valor nico o valores mltiples. Adems, los atributos de objeto pueden hacer referencia a uno o ms objetos. A nivel de ejecucin, el OID del objeto al que se referencia se utiliza para vincular ambos objetos, lo que permite la ejecucin de relaciones entre dos o ms objetos. Esto es distinto al modelo relacional en el que el atributo de una tabla puede contener slo un valor que puede ser utilizado para unir filas (JOIN) en tablas diferentes.

Identidad del objeto


La identidad del objeto est representada por el ID de objeto (OID), el cual es nico de ese objeto. El OID es asignado por el sistema al momento de la creacin del objeto y no puede ser cambiado en ninguna circunstancia. No debe confundirse con la clave principal del modelo relacional, ya que esta ltima se basa en valores dados por el usuario de atributos seleccionados y puede ser cambiada en cualquier momento. El OID puede ser eliminado slo si el objeto es eliminado, y ese OID no puede ser reutilizado.

Clase, conjunto de entidades y tabla


El concepto de clase puede ser asociado con los conceptos de conjunto de entidades y tabla de los modelos E-R y relacional, respectivamente. No obstante, clase es un concepto ms poderoso que permite no slo la descripcin de la estructura de datos sino tambin la descripcin del comportamiento de los objetos clase. Adems, el OODM introduce el concepto de tipos de datos abstractos, permitiendo la definicin de tipos de datos nuevos que posteriormente pueden ser utilizados como cualquier otro tipo de datos base que acompaa a una base de datos, incrementando as el contenido semntico de los objetos modelados.

Encapsulado y herencia
Estas dos caractersticas no son soportadas por los modelos de datos relacionales o E-R.

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

El encapsulado es la capacidad de ocultar los detalles internos del objeto (atributos y mtodos). Esta capacidad deriva de que la estructura interna de un objeto no puede ser accedida directamente por otro objeto, garantizando la integridad del estado del objeto. La herencia es la capacidad de un objeto dentro de una jerarqua de heredar la estructura de datos y el comportamiento (mtodos) de las clases sobre ella.

Relaciones
La principal propiedad de cualquier modelo de datos se encuentra en su representacin de relaciones entre los componentes de datos. Las relaciones en un OODM pueden ser de dos tipos: relacin interobjeto o herencia de jerarqua de clases. Relaciones interobjeto: vnculos atributo-clase Una relacin atributo-clase o relacin interobjeto, se crea cuando el atributo de un objeto hace referencia a otro objeto de la misma o diferente clase. Existen dos tipos de relaciones interobjeto: relaciones 1:M y M:N. Relaciones 1:M En contraste con el modelo relacional, el OODM soporta atributos multivaluados, agregaciones conocidas como conjuntos o bolsas. Esta capacidad es esencial para representar cualquier tipo de relaciones a muchos. Para representar una relacin 1:M se define un atributo en la clase muchos de la relacin para almacenar el identificador del objeto de la clase uno. En la clase uno se define un atributo para almacenar un conjunto de valores, que sern los identificadores de los muchos objetos con los que est relacionado. Es importante tener en cuenta que aunque la relacin es definida por los atributos en la clase, en la propia base de datos las relaciones son entre objetos, es decir, las relaciones clave primaria-clave ajena son entre filas especficas y no entre tablas completas. Relaciones M:N Debido a que una base de dato OO permite a los objetos tener atributos multivaluados, las relaciones M:N pueden ser directamente representadas sin necesidad de crear entidades compuestas. Para representar la relacin M:N cada clase que participa en la relacin define un atributo que contendr un conjunto de valores de las otras clases con las que est relacionada. En principio, la capacidad de representar directamente relaciones M:N puede parecer una gran ventaja de las bases de datos OO. Sin embargo, hay que tener mucho cuidado al usarlas debido a que se produce prdida de informacin.

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Un tipo especial de relacin M:N es la relacin parte de un todo. En esta relacin, un producto puede estar compuesto de muchas partes y subpartes. Y, de la misma forma, la misma parte o subparte puede ser usada en diferentes productos. La forma de implementar esta relacin en una base de datos es la misma que se ha comentado anteriormente, usando conjuntos de identificadores de objetos en las dos clases que estn relacionadas.

Relaciones de herencia de jerarqua de clases Las relaciones de herencia de jerarqua de clases se utilizan para describir la relacin entre las clases de la jerarqua. Existen dos tipos de relaciones de herencia: la relacin is a y extends. Relaciones is a La relacin is a, tambin conocida como relacin de generalizacin-especializacin, crea una jerarqua de herencia donde las subclases son tipos especficos de sus superclases. Este tipo de herencia se denomina herencia de comportamiento, es decir, herencia de las operaciones de la superclase a la subclase. Para implementar esta relacin se requiere que la superclase sea una interfaz y la subclase puede ser una clase u otra interfaz. Relaciones extends En la relacin extends, una subclase extiende a su superclase ms que restringirla a un tipo ms especfico. Este tipo de herencia se utilizada para heredar el estado y el comportamiento estrictamente entre clases.

Acceso
Los modelos E-R y relacionales dependen del uso de SQL para recuperar datos de la base de datos. SQL es un lenguaje de consultas orientado a los conjuntos, que est basado en un modelo matemtico formalmente definido. Dada su herencia orientada a conjuntos, SQL utiliza mtodos de acceso asociativos para recuperar informacin relacionada de una base de datos, con base en el valor de alguno de sus atributos. A consecuencia del contenido de ms semntica en su modelo de datos, el OODM produce un esquema en el cual las relaciones forman parte de la estructura de la base de datos. El OODM soporta tanto el acceso navegacional (registro a la vez) como el acceso orientado a conjuntos. El acceso navegacional consiste en navegar a travs de la estructura espacial del objeto desarrollado por el diseador utilizando las identidades de objeto. El acceso orientado a conjuntos asociativo en el OODM debe ser provisto por mtodos explcitamente definidos, por consiguiente el diseador debe ejecutar operaciones para manipular

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

las instancias de objeto en el esquema de objeto. La ejecucin de esas operaciones afectar el desempeo y la capacidad de la base de datos de manejar los datos. Aqu es donde aparece el problema principal del modelo de objetos: la carencia de un modelo matemtico subyacente universalmente aceptado para la manipulacin de los datos. Esto obliga a que cada ejecucin cree su propia versin de un lenguaje de consulta orientado a objetos (OQL).

Comparacin de los componentes de los modelos OO y E-R. Modelo de Datos Orientado a Objetos
Tipo Objeto Clase Variable de Instancia Sin Correspondencia OID Mtodo Jerarqua de Clases

Modelo E - R
Definicin de Entidad Entidad Conjunto de Entidades Atributo Clave Principal Sin Correspondencia Sin Correspondencia Diagrama E R

Estndares de bases de datos de objetos


En el diseo de OODB no existe una metodologa estndar ampliamente aceptada que gue el proceso de diseo ni un conjunto de reglas (como las reglas de normalizacin en el modelo relacional) para evaluar el diseo. Sin embargo, esta situacin est mejorando. En 1989, un consorcio de fabricantes de ODBMS form el Object Management Group (OMG) para garantizar la interoperabilidad entre todos los diferentes sistemas orientados a objetos (lenguajes, ambientes, bases de datos, etc.). El OMG produce estndares y especificaciones independientes del proveedor para componentes y sistemas basados en objetos. El estndar propuesto por OMG se denomina ODMG (Object Data Management Group). La primera versin de este estndar se public en 1993 y con el paso del tiempo se ha ido refinando, llegando a su versin actual: ODMG 3.0. Los principales componentes de este estndar son cuatro: Modelo de objetos: el modelo de objetos est basado en el modelo de objetos de OMG y lo extiende, aadiendo algunos componentes (como por ejemplo las relaciones) para soportar las necesidades especficas de las bases de datos. Lenguajes de especificacin de objetos: el modelo de objetos de OMG soporta dos lenguajes de especificacin de objetos: el ODL (Object Definition Language) y el OIF (Object Interchange Format). El ODL no es un lenguaje de programacin

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

completo aunque es un lenguaje de definicin independiente para la especificacin de objetos. La sintaxis del ODL extiende el lenguaje de definicin de interfaces (IDL) desarrollado por OMG. OIF es otro lenguaje de especificacin que fue introducido en la versin 2.0 del estndar y que se puede usar para intercambiar objetos entre bases de datos, proporcionar documentacin de bases de datos o guiar un conjunto de pruebas de bases de datos.

Lenguaje de consulta de objetos (OQL): es un lenguaje declarativo para consultar bases de datos. Tambin proporciona algunos constructores para actualizar los objetos de la misma. Aunque est basado en el lenguaje SQL, su semntica no es la misma. OQL soporta capacidades ms potentes con respecto al resultado de la consulta, permitiendo obtener el mismo resultado en tipos coleccin diferentes. Sin embargo, el resultado de una consulta SQL siempre es una tabla. Vinculacin con lenguajes de programacin: la actual versin del estndar tiene vinculacin con los lenguajes de programacin C++, JAVA y Smalltalk. Estas vinculaciones definen la correspondencia entre el ODL y los lenguajes de programacin correspondientes.

Ejemplo
En la ilustracin 1 se muestra un ejemplo que muestra un esquema de bases de datos orientada a objetos, con una simbologa semejante a UML. En la ilustracin 1, cada nodo representa una clase, y se compone de 3 niveles: nombre de la clase, atributos y mtodos. Los atributos que tienen el smbolo * son atributos multivaluados. Los nodos se pueden conectar por dos tipos de arcos: Un arco normal (lnea delgada) indica que la clase del destino de la flecha es el dominio de un atributo de la clase origen o el resultado de un mtodo de la clase origen. Esto se puede ver, por ejemplo, en el atributo documento de la clase Proyecto, cuyo dominio es la clase Documento.

Un arco grueso indica que la clase origen de la flecha es una subclase de la clase destino (herencia). Esta relacin se puede apreciar entre las clases Informe Tcnico o la clase Artculo y Documento, siendo sta ltima la superclase de las dos anteriores.

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

En este ejemplo, adems, se pueden contemplar relaciones interobjeto 1:M, como por ejemplo entre Proyecto.documento y Documento.

Ilustracin 1.- Diagrama de Ejemplo.

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Bases de Datos Objetos - Relacionales


Las bases de datos objeto-relacionales son la evolucin natural de las bases de datos orientadas a objetos puras y las relacionales puras, debido a las limitaciones de ambas. Las limitaciones presentadas por el relacional son las siguientes:

Debido a la imposicin de la primera forma normal en el modelo relacional la representacin de los objetos es bastante pobre. A esto se une la falta de relaciones anidadas. Como consecuencia de esto surge la necesidad de la utilizacin de muchas tablas para dar soporte a estructuras complejas, como por ejemplo el uso de tablas intermedias para resolver las relaciones de cardinalidad uno a muchos. Al tratar estructuras recursivas o anidadas y en colecciones de datos que correspondiendo al mismo tipo de entidad, el modelo no ofrece una respuesta adecuada.

En el caso de la descomposicin de los datos en mltiples tablas complica su recuperacin.

La creacin de tipos est altamente limitada. Ausencia de mecanismos de reutilizacin.

Con objeto de solucionar estas limitaciones, surge el modelo orientado a objetos puro, y como una transicin entre ambos aparece el modelo objeto-relacional, que vamos a tratar a continuacin.

Modelo Objeto - Relacional


Como se ha comentado en el punto anterior, una de las ventajas que aporta el modelo es la posibilidad de tratar y/o definir tipos de datos ms complejos.

Lobs
Es un tipo de dato que permite almacenar gran cantidad de informacin ( del orden de Gigabytes). Existen dos tipos:

10

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

BLOB (Binary Large OBject): Se utiliza para guardar datos de tipo binario (fotografa, audio, vdeo, etc.). CLOB (Character Large OBject): Se usan para el almacenamiento de texto (Libros, XML, etc.). Dependiendo del SGBD y del tamao de los LOBS, stos se almacenan directamente en la base de datos o una referencia hacia un fichero externo.

Tipos definidos por el usuario


Los usuarios pueden definir sus propios tipos de datos, a partir de los tipos bsicos provistos por el sistema o por otros tipos de datos predefinidos anteriormente por el usuario. Existen dos tipos de datos definidos por el usuario, los tipos distintos y los tipos estructurados. Tipos distintos En el modelo relacional, las columnas de una tabla se definen mediante tipos de datos primitivos. De esta forma, dos columnas con distinta semntica y, por tanto, distinto comportamiento, podan estar definidas bajo el mismo tipo de datos compartiendo la misma representacin. Se usan cuando dos tipos de datos comparten la misma representacin pero tienen distinto comportamiento. La definicin de tipos distintos se basa en el renombrado de tipos, de tal modo que el tipo distinto no es comparable con el tipo fuente.

Ilustracin 2.- Ejemplo Tipos Distintos.

Tipos estructurados Se pueden usar en cualquier sitio donde se pueda usar un tipo de datos predefinido. Estn formados por una agrupacin de tipos predefinidos. Se podran considerar como un struct en lenguaje C.

11

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Se pueden utilizar de dos formas diferentes: Como tipo de una columna. Se utiliza un tipo compuesto como un atributo ms de una tabla. Como tipo de una fila de una tabla (tabla tipada). Se utiliza el tipo compuesto para definir de forma implcita la estructura de una tabla, es decir se crear una tabla con la estructura necesaria para almacenar este tipo de datos, pudindose utilizar como objetos. El SGBD se encarga de crear un atributo REF (Object IDentification) que identificar de forma unvoca a una tupla, podramos ver este hecho como una abstraccin del uso de primary key.

Ilustracin 3.- Ejemplo Tipos Estructurados.

Tipos referencia
Podramos entender los tipos referencia como la evolucin de las foreign key. En la definicin de una tabla o de un tipo definido por el usuario, se podr incluir una atributo de tipo referencia, el cual almacenar el valor del OID del la fila de la tabla tipada referenciada. Pueden ser usados en cualquier sitio donde pueda usarse otro tipo de datos. Aunque como se ha apuntado podra verse como la evolucin de las foreign key hay que tener en cuenta que no tiene la misma semntica, La clave ajena implica integridad referencial y el tipo referencia no, pudiendo tener referencia que no llevan a ninguna parte (dangling references).

Tipos coleccin
Una coleccin es un grupo de elementos homogneos, primitivos o definidos por el usuario. A grandes rasgos estos tipos permiten poder evitar las restricciones impuestas por la primera forma normal en el modelo relacional, es decir se pueden utilizar como el tipo de datos de una columna de una tabla. Podemos encontrar dos tipos de colecciones:

Array: Conjunto de elementos homogneos e indexados (similar a un vector en un lenguaje de programacin de alto nivel) vase Ilustracin 3.

12

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Multiset: Conjunto de elementos homogneos sin orden y permitindose elementos repetidos, adems se permiten colecciones anidadas.

Tipos ROW
Tipo de datos que agrupa atributos. Si una fila de una tabla es una instancia de un tipo ROW, cada fila de la tabla tiene el mismo tipo. Con esto se consigue que un tipo de datos pueda representar las filas de una tabla para ser almacenadas en variables, pasadas como argumentos a rutinas y que sean devueltas por funciones. Estas caractersticas son las que diferencian los tipos ROW de los tipos definidos por el usuario utilizados como descriptores de filas. Vemos un ejemplo en la ilustracin 4.

Personas
Nombre
Pepe Mariano

Direccin

Calle N piso CP Mata 59 5 13000 623987455 926547326 Paloma 2 3 13003 925786320 null
Ilustracin 4.- Ejemplos Tipos ROW y ARRAY.

Telfono

Herencia
La herencia de tipos indica que el subtipo hereda la estructura y el comportamiento del supertipo, pudiendo adems incluir caractersticas propias. La herencia de tablas hace referencia a la parte extensional de un jerarqua, es decir , al principio de clasificacin por el que toda instancia del subtipo es tambin una instancia del supertipo; para definir una jerarqua de tablas tanto la subtabla como la supertabla deben ser tipadas. Las subtablas heredan los atributos, restricciones, disparadores, etc. De la supertabla. La herencia de tipos como de tablas se especifica mediante la clusula UNDER, y adems un tipo puede declarase como FINAL (si no puede tener subtipos) o como NOT FINAL (en caso contrario):

En tipos: CREATE TYPE tipoFinca UNDER tipoPropiedad As () NOT FINAL; En tablas: CREATE TABLE Finca OF tipoFinca UNDER Propiedad;

Sustitutabilidad Se asegura que cualquier dato de un supertipo puede ser sustituido por un dato de cualquiera de sus subtipos.

13

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Vinculacin dinmica La herencia de tipos puede dar lugar a la sobrecarga o polimorfismo de mtodos, es decir, se puede redefinir la implementacin de un mtodo heredado al definir un subtipo.

Ilustracin 5.- Ejemplo de Herencia.

Mtodos
Los mtodos son funciones SQL ligadas a un tipo estructurado que representan el comportamiento de dicho tipo. La signatura del mtodo se especifica junto a la definicin del tipo de datos al que va ligado. La especificacin de su cuerpo se define separada. Los mtodos pueden ser llamados utilizando la notacin punto.

Consultas
Una de las principales ventajas del modelo objeto-relacional es que permite la realizacin de consultas navegacionales, permitiendo aumentar los tiempos de respuesta de las consultas relacionales, al eliminarse la necesidad de hacer combinaciones.

Ejemplo
Utilizando la ilustracin 1, en la que veamos un diagrama que representa una estructura de clases, vamos a ver cmo, utilizando el modelo objeto-relacional podramos implementar en una base de datos algunas de las caractersticas reflejadas en el mismo. Podemos encontrar un ejemplo claro de un posible uso de tipos distintos en los atributos cdigo y ttulo de la clase Documento. Ambos son de tipo STRING pero sus usos y posibles estructuras estn claramente diferenciados, y comparaciones entre ambos podran suponer errores semnticos. La clase Documento la podramos modelar como una tabla tipada (procedente de un tipo estructurado) de la cual heredaran Informe Tcnico y Artculo. Adems podramos enriquecer el diagrama con la inclusin de un atributo de tipo CLOB en la tabla tipada Documento, el cual podra servir para almacenar el texto del mismo. Si vemos la clase Proyecto observaremos que puede tener asociados uno o ms documentos, luego podramos implementar esta particularidad mediante el uso de un tipo MULTISET de tipos REFERENCIA, siendo estas ltimas referencias a documentos (filas de la tabla tipada Documento).

14

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Haciendo una ligera modificacin en el diseo podramos incluir el uso de un tipo ROW en Investigador, podramos agrupar los atributos salario bonificacin y salario promedio bajo una denominacin comn, por ejemplo SalarioInv. Ejemplos claros de uso de mtodos los encontramos en diferentes ocasiones como para el caso de la clase Investigador donde aparece el mtodo salario mensual() as como en la clase Proyectos encontramos mtodos como participantes() y balance().

Comparativa entre modelos


A continuacin se ha realizado una tabla comparativa entre los dos modelos de bases datos tratados a lo largo de este trabajo:

Caracterstica
Contenido Semntico

Orientado a Objetos
Incrementado mediante el uso de objetos (atributos y mtodos).

Objeto - Relacional
Incrementado mediante el tipo de datos estructurado (atributos y mtodos). Se extiende mediante el uso de nuevos tipos de datos (referencia, coleccin y row) y definidos por el usuario. Tipos Estructurados Complejos. 1:M, M:N y extends. Mediante Herencia de Tipos Estructurados y Tablas Tipadas. Igual que en la Programacin Orientada a Objetos. SQL 2003. Sin Fundamento Terico. Moderada. Slo con Claves Ajenas. Ms aceptado que el OO. Igual que en el Modelo Relacional. Consultas eficientes gracias al uso de referencias entre tipos de datos estructurados. Semejante al Modelo Relacional.

Tipos de Datos Base

Se extienden mediante el uso los tipos de datos abstractos. Objetos Complejos. 1:M, M:N, is a y extends Mediante Herencia de Objetos. Igual que en la Programacin Orientada a Objetos. Baja. Estndares poco aceptados. Sin Fundamento Terico. Elevada. Si, Referencias Cruzadas. Mercado Inmaduro. Navegacional y Orientado a Conjuntos. Consultas eficientes gracias al uso de referencias entre objetos. Optimiza el Acceso a Disco (Agrupa los Datos Relacionados, Objetos).

Tipos de Datos Complejos Relaciones Reutilizacin Encapsulado Portabilidad Modelo de Datos Curva de Aprendizaje Integridad Referencial Comercializacin Acceso

Rendimiento

Eficiencia

15

Modelos Avanzados de Bases de Datos Funcionalidad 1: BBDDOO y BBDDOR

E.S.I. de Ciudad Real Universidad de Castilla - la Mancha

Bibliografa
Bertino, E., Martino, L. Sistemas de bases de datos orientadas a objetos. Concepto y arquitecturas.. Addison-Wesley/ Diaz de Santos 1995. USA. Connolly, T. M., Begg, C. E. Sistemas de bases de datos. Un enfoque prctico para diseo, implementacin y gestin. 4 edicin. Addison-Wesley 2005. Date, C. J. Introduccin a los sistemas de bases de datos. 2001. Mxico. Harrington, J. L. Object-Oriented Database Design. Clearly explained. Kaufmann 2000. USA. Piattini, M., Marcos, E., Calero, C., Vela, B. Tecnologa y diseo de bases de datos. RaMa 2006. Espaa. Rob, P., Coronel, C. Sistemas de bases de datos. Diseo, implementacin y administracin. Thomson 2004. Mxico. Morgan

16

Das könnte Ihnen auch gefallen