sistemas de base de datos orientada a objetos.docx

12
1 Unidad 2 Sistemas de base de datos orientada a objetos

Upload: ruby-ramirez

Post on 26-Oct-2015

23 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sistemas  de base de datos  orientada a  objetos.docx

1

Unidad

2

Sistemas de base de datos orientada a objetos

Page 2: Sistemas  de base de datos  orientada a  objetos.docx

2

2.1 El modelo de datos orientado a objetos

Las bases de datos orientadas a objetos se crearon para tratar de satisfacer las necesidades de estas nuevas aplicaciones. La orientación a objetos ofrece flexibilidad para manejar algunos de estos requisitos y no está limitada por los tipos de datos y los lenguajes de consulta de los sistemas de bases de datos tradicionales.

Los objetos estructurados se agrupan en clases. Las clases utilizadas en un determinado lenguaje de programación orientado a objetos son las mismas clases que serán utilizadas en una base de datos; de tal manera, que no es necesaria una transformación del modelo de objetos para ser utilizado. De forma contraria, el modelo relacional requiere abstraerse lo suficiente como para adaptar los objetos del mundo real a tablas. El conjunto de las clases se estructuran en subclases y superclases, los valores de los datos también son objetos.

Muchas organizaciones que actualmente usan tecnología orientada a objetos también desean los beneficios de los sistemas de gestión de base de datos orientados a objetos. En otras palabras, se desea la migración de bases de datos y aplicaciones de bases de datos relacionales a orientadas a objetos. La migración a la tecnología de objetos consiste de la ingeniería reversa de los programas de aplicación y la migración de la base de datos. El objetivo de la migración de la base de datos es tener un esquema equivalente y la base de datos disponibles. Esto desde luego puede ser logrado por medio de la transformación manual del código de los programas lo cual resulta demasiado complicado. Para esto existen tres enfoques que hacen uso de la tecnología de objetos para bases de datos relacionales.

a.- Construir una interface orientada a objetos sobre el sistema de base de datos relacional.

b.- La migración a un sistema de base de datos relacional/objetos.

c.- Conversión del esquema de base de datos relacional a uno orientado a objetos.

El primer enfoque retiene la base de datos relacional y crea una interface orientada a objetos encima de ésta. Este enfoque es el más fácil; no existe interrupción del sistema para la migración de datos y no existe perdida semántica de la información. Por otro lado el rendimiento disminuye debido que no existe un buen acoplamiento entre los dos paradigmas en el tiempo de ejecución.

En el segundo enfoque, los datos deben ser migrados de acuerdo con el motor de base de datos (por ejemplo Oracle 7 a 8), y las características orientadas a objetos solo pueden ser explotadas con la modificación o extensión del esquema.

Page 3: Sistemas  de base de datos  orientada a  objetos.docx

3

El tercer enfoque es la migración de la base de datos en donde un nuevo esquema bajo el OODBMS es creado y los datos son migrados de la base de datos relacional a la orientada a objetos.

Una base orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:

Encapsulación: Propiedad que permite ocultar información al resto de los objetos, impidiendo así accesos incorrectos o conflictos.

Herencia: Propiedad a través de la cual los objetos heredan comportamientos dentro de una jerarquía de clases.

Polimorfismo: Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.

Las debilidades y limitaciones de los Sistema Gestor de Bases de Datos Orientadas a Objetos son:

Pobre representación de las entidades del "mundo real". Sobrecarga y poca riqueza semánticas. Soporte inadecuado para las restricciones de integridad y empresariales Estructura de datos homogénea Operaciones limitadas Dificultades para gestionar las consultas recursivas Desadaptación de impedancias Problemas asociados a la concurrencia, cambios en los esquemas y el

inadecuado acceso navegacional. No ofrecen soporte para tipos definidos por el usuario (sólo dominios)

Mientras que las necesidades de las aplicaciones actuales con respecto a las bases de datos son:

Soporte para objetos complejos y datos multimedia Identificadores únicos

Page 4: Sistemas  de base de datos  orientada a  objetos.docx

4

Soporte a referencias e interrelaciones Manipulación navegacional y de conjunto de registros Jerarquías de objetos o tipos y herencia Integración de los datos con sus procedimientos asociados Modelos extensibles mediante tipos de datos definidos por el usuario Gestión de versiones Facilidades de evolución Transacciones de larga duración Interconexión e interoperabilidad

Debido a las limitaciones anteriormente expuestas, su uso es más ventajoso si se presenta en alguno de los siguientes escenarios:

Un gran número de tipos de datos diferentes Un gran número de relaciones entre los objetos Objetos con comportamientos complejos

Características

Una de las características mandatorias de o reglas son:

1.-Debe tener un motor de base de datos.

2.-Debe ser un sistema orientado a objetos.

Mandatorias.- Son las que el Sistema debe satisfacer a orden de tener un sistema de base de datos orientadas a objetos y estos son: Objetos complejos, Identidad de objetos, Encapsulación, Tipos ó Clases, Sobre paso combinado con unión retardada, Extensibilidad, Completación Computacional, Persistencia y Manejador de almacenamiento secundario, Concurrencia, Recuperación y Facilidad de Query.

Opcional.- Son las que pueden ser añadidas para hacer el sistema mejor pero que no son Mandatorias estas son de: herencia múltiple, chequeo de tipos e inferencia distribución y diseño de transacciones y versiones.

Abiertas.- Son los puntos donde el diseñador puede hacer un número de opciones y estas son el paradigma de la programación la representación del sistema ó el tipo de sistema y su uniformidad.

Page 5: Sistemas  de base de datos  orientada a  objetos.docx

5

2.1.1 Características de los SGBDOO

1.-Debe soportar objetos complejos. Debe ser posible construir objetos complejos aplicando constructores a objetos básicos.

2.-Identidad del objeto. Todos los objetos deben tener un identificador, el cual es independiente de los valores de sus atributos.

3.-Encapsulamiento. Los programadores solo tienen acceso a la interfaz de los métodos, y los datos e implementación de estos métodos están en los objetos.

4.-Tipos o clases. El esquema de una base orientada a objetos contiene un conjunto de clases o tipos.

5.-Tipos o clases deben ser capaces de heredar de sus super-tipos o superclases los atributos y los métodos.

6.-La sobrecarga debe ser soportada, los métodos deben poder aplicarse a diferentes tipos.

7.-El DML debe ser completo. El DML en los sistemas gestores de bases de datos orientados a objetos debe ser un lenguaje de programación de propósito general.

8.-El conjunto de tipos de datos debe ser extensible. No habrá  distinción entre los tipos definidos por el usuario y los tipos definidos por el sistema,

Page 6: Sistemas  de base de datos  orientada a  objetos.docx

6

9.-Persistencia de datos. Los datos deben mantenerse después de que la aplicación que los creó haya finalizado, el usuario no tiene que hacer copia explícitamente.

10.-El SGBD debe ser capaz de manejar bases de datos grandes.

11.-El SGDB debe soportar la concurrencia. Debe disponer del mecanismo para el control de la concurrencia.

12.-Recuperaci¢n. El sistema gestor debe de proveer mecanismos de recuperación de la información en caso de fallo de sistema.

13.-El SGDB debe proveer de manera fácil de hacer consultas.

2.1.2 Tipos de SGBDOO

Lenguaje ODL

El lenguaje de definición de datos (ODL) en un SGBDOO es empleado facilitar la portabilidad de los esquemas de las bases de datos. Este ODL no es un lenguaje de programación completo, define las propiedades y los prototipos de las operaciones de los tipos, pero no los métodos que implementan esas operaciones.

 El ODL intenta definir tipos que puedan implementarse en diversos lenguajes de programación; no está por tanto ligado a la sintaxis concreta de un lenguaje de programación particular. De esta forma un esquema especificado en ODL puede ser soportado por cualquier SGBDOO que sea compatible con ODMG-93.

La sintaxis de ODL es una extensión de la del IDL (Interface Definition Language) desarrollado por OMG como parte de CORBA (Common Object Request Broker Architecture).

Sección de interface( secciones de lave extensas (es_seccion_de, numero){attribute String numero; relationship Profesor Es asesorada por inverse Profesor:: Enseña;

relationship PA Tiene PA inverse PA::Asiste;relationship Curso Es sección de inverse Curso::Tiene_secciones;};

La traducción ODL-C++, por ejemplo, se expresará como una librería de clases y una extensión a la gramática estándar de C++. La librería de clases proporcionará clases y funciones para implementar los conceptos definidos en el modelo de objetos, y la extensión consistirá en un conjunto de palabras reservadas y su

Page 7: Sistemas  de base de datos  orientada a  objetos.docx

7

sintaxis asociada, que se añadirán a la declaración de clases de C++ para proporcionar un soporte declarativo para las interrelaciones.

Lenguaje OML

El lenguaje de manipulación es empleado para la elaboración de programas que permitan crear, modificar y borrar datos que constituyen la base de datos.

ODMG-93 sugiere que este lenguaje sea la extensión de un lenguaje de programación, de forma que se pueden realizar entre otras las siguientes operaciones sobre la base de datos: Creación, Borrado, Modificación e Identificación de un objeto

Lenguaje OQL

El lenguaje de consulta propuesto por ODMG-93, presenta las siguientes características

* No es computacionalmente completo. Sin embargo, las consultas pueden invocar métodos, e inversamente los métodos escritos en cualquier lenguaje de programación pueden incluir consultas.

* Tiene una sintaxis abstracta.

* Su semántica formal puede definirse fácilmente.

* Proporciona un acceso declarativo a los objetos.

* Se basa en el modelo de objetos de ODMG-93.

* Tiene una sintaxis concreta al estilo SQL, pero puede cambiarse con facilidad.

* Puede optimizarse fácilmente.

 * No proporciona operadores explícitos para la modificación, se basa en las operaciones definidas sobre los objetos para ese fin.

* Proporciona primitivas de alto nivel para tratar con conjuntos de objetos, pero no restringe su utilización con otros constructores de colecciones.

Existen dos posibilidades para asociar un sublenguaje de consulta a un lenguaje de programación: fuerte y débilmente.

* El primer caso consiste en una extensión de la gramática del lenguaje asociado.

Page 8: Sistemas  de base de datos  orientada a  objetos.docx

8

* En el segundo caso, las funciones query tienen unos argumentos String que contienen las preguntas.

2.1.3 Productos

MySQL

MySQL Server es la base de datos de código fuente abierto más usada del mundo desarrollado y proporcionado por MySQL AB. MySQL AB es una empresa cuyo negocio consiste en proporcionar servicios en torno al servidor de bases de datos MySQL.

ORACLE

Desarrollado por Oracle Corporation, es una de las bases de datos más confiables que existen en el mercado.

PROGRESS

Progress Software Corporation (PSC), es una corporación transnacional con sede en la ciudad de Bedford, Massachusetts, en los Estados Unidos, y cuenta con oficinas regionales para América Latina, Europa, Asia/ Pacífico; y presencia en más de 100 países alrededor del mundo. Su enfoque de negocios consiste en la creación y comercialización de herramientas para el desarrollo de aplicaciones y bases de datos.

SYBASE

Sybase Inc. Desde su fundación en Berkeley, California (EE.UU.), en 1984, Sybase se ha ganado la confianza de muchas de las compañías más importantes del mundo por su habilidad en la gestión de información.

SQL SERVER

Microsoft SQL Server es un sistema de gestión de bases de datos relacionales RDBMS basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ, capaz de poner a disposición de muchos usuarios grandes cantidades de datos de

Page 9: Sistemas  de base de datos  orientada a  objetos.docx

9

manera simultánea. Así de tener unas ventajas que a continuación se pueden describir.

Conclusión

Las BDOO permiten el desarrollo y mantenimiento de aplicaciones complejas con un costo Significativamente menor.Permiten que el mismo modelo conceptual se aplique al Análisis, diseño, programación, definición y acceso a la base de datos.Las BDOO ofrecen un mucho mejor rendimiento de la máquina que las bases de datos relacionales para aplicaciones o clases con estructuras complejas de datos. Relacional como una forma de estructura de datos dentro de una BDOO. Así igual que sus características las cuales son 13 y también los productos los cuales permiten manipular y crear las bases de datos.

Bibliografía

http://www.monografias.com/trabajos79/base-datos-orientadas-objetos/base-datos-orientadas-objetos.shtml

http://ziscko.wordpress.com/2011/02/04/las-13-caracteristicas-de-un-sgbdoo/

http://blearning.itmina.edu.mx/dep/sada/carreras/Ingenieria%20en%20Sistemas%20Computacionales/5to%20Semestre/Taller%20de%20Base%20de%20Datos/taller_bd/DBOO.pdf

http://www.buenastareas.com/ensayos/Memoria-Topicos-Avanzados-De-Base-De/33346.html