Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Copy of Bases de Datos Orientadas a Objetos

No description
by

MARYSOL CAMACHO

on 20 September 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Copy of Bases de Datos Orientadas a Objetos

Comparación entre software de manipulación de bases de datos OO
Bases de Datos Orientadas a Objetos.
Conclusiones
Marco Teórico
Herramientas para el manejo de bases de datos DB4O
Software existente para manipulación de bases de datos OO.
Ventajas y desventajas del modelo OO sobre el EERR.
Diferencias principales entre OODB y RDB
Instalación de DB4O
Base de Datos
MiTienda
Fundamentos de Bases de Datos
Orientadas a Objetos
Objetos, Estructuras y Constructores
Jerarquía de
Clases y Herencia
Métodos y
Persistencia
Relaciones
Anidadas y Objetos
Complejos
Mientras que en una BDR los datos a almacenar se almacenan representados en tablas en un BDOO los datos se almacenan como objetos.
Un objeto en BDOO como en POO es una entidad identificable unívocamente que describe tanto el estado como el comportamiento de una entidad del ‘mundo real’.
El estado de un objeto es descrito mediante atributos mientras que su comportamiento es definido mediante métodos.
Un objeto tiene asociado:

• Un conjunto de variables que contienen los datos del objeto. El valor de cada variable es un objeto.
• Un conjunto de mensajes a los que el objeto responde.
• Un método, que es un trozo de código para implementar cada mensaje. Un método devuelve un valor como respuesta al mensaje.

Los tres constructores básicos son:
Los átomos son como las constantes y los identificadores de un lenguaje imperativo: incluye los números, las cadenas, los nombres, las funciones y unos cuantos constructores.

*Constructores de Atomos:
*Constructores de Tuplas:
*Constructores de Conjuntos:
Son importantes porque proporcionan un medio natural para representar los componentes o propiedades de entidad, sólo puede ser aplicado a valores atómicos.
Son cruciales porque son una forma natural de representar las colecciones del mundo real y se utilizan para definir atributos multi-elevados, sólo se puede aplicar a tuplas.
Podemos definir método como un programa procedimental o procedural escrito en cualquier lenguaje, que está asociado a un objeto determinado y cuya ejecución solo puede desencadenarse a través de un mensaje recibido por éste o por sus descendientes.
Métodos
Persistencia
Es la resistencia de un objeto a variar en el tiempo, la idea de estas bases de datos es que puedan recuperar los objetos creados o guardados.
Jerarquía de Clases
El concepto de jerarquía de clases es parecido al de especialización del modelo E-R.
Las especializaciones de las clases son denominadas subclases; la cual específica atributos y métodos adicionales para una clase existente.
Los objetos creados por medio de una sub clases heredan todos los atributos y métodos de la clase padre.
Herencia
Una clase implanta el tipo de objeto. Una subclase hereda propiedades de su clase padre; una subsubclase hereda propiedades de las subclases; etc. Una subclase puede heredar la estructura de datos y los métodos, o algunos de los métodos, de su superclase. También tiene sus métodos e incluso tipos de datos propios.
Relaciones Anidadas
Objetos Complejos
El modelo relacional anidado es una extensión del modelo relacional en la que los dominios pueden ser atómicos o de relación. Por tanto, el valor de las tuplas de los atributos puede ser una relación, y las relaciones pueden guardarse en otras relaciones
Los objetos complejos, por tanto, pueden representarse mediante una única tupla de las relaciones anidadas. Si se consideran las tuplas de las relaciones anidadas como elementos de datos, se tiene una correspondencia uno a uno entre los elementos de datos y los objetos de la vista de la base de datos del usuario.
DB4O
Diseño de Bases de Datos Orientadas a Objetos
DB4O es un novedoso motor de base de datos orientada a objetos.
Sus siglas se corresponden con la expresión "DataBase 4 (for) Objects"
Alto rendimiento (sobre todo en modo embebido) y un modelo de desarrollo que proporciona a las aplicaciones para su capa de acceso a datos.
Usando db4o y las demás bases de datos orientadas a objetos esto es transparente al desarrollador, quien sólo llama desde su código a métodos del objeto que administra la base de datos para realizar una consulta, dar un alta, una modificación o eliminar algún objeto de la base de objetos.
La diferencia entre un tipo de base de datos y el otro radica en la naturaleza con la que se guardan, consultan y manejan los datos.
En las bases de datos relacionales los datos están en registros de tablas, que almacenan datos o referencias a registros de otras tablas.
En el modelo relacional el mapeo entre los objetos del modelo de negocio y las tablas debe establecerse y configurarse en tiempo de desarrollo.
ObjectManager
Plugin para Eclipse
Las bases de datos relacionales están constituidas por una o más tablas que contienen la información ordenada de una forma organizada. Cumplen las siguientes leyes básicas:

Generalmente, contendrán muchas tablas.
Una tabla sólo contiene un número fijo de campos.
El nombre de los campos de una tabla es distinto.
Cada registro de la tabla es único.
El orden de los registros y de los campos no está determinados.
Para cada campo existe un conjunto de valores posible.
Las técnicas OO utilizan los mismos modelos conceptuales para el análisis, diseño y construcción.
El Primero.- Se puede utilizar el código actual altamente complejo de los sistemas de administración de las bases de datos, de modo que una BDOO se implante más rápido sin tener que iniciar de cero.
Las BDOO se pueden construir mediante alguno de los tres enfoques siguientes:
El Segundo.- Considera a la BDOO como una extensión de la tecnología de las bases de datos por relación. De este modo, las herramientas, técnicas, y vasta experiencia de la tecnología por relación se utilizan para construir una nueva BD.
El Tercero.- Reflexiona sobre la arquitectura de los sistemas de bases de datos y produce una nueva arquitectura optimizada, que cumple las necesidades de la tecnología OO.
Ejercicio Práctico
Las bases de datos orientadas a objetos (BDOO) son aquellas cuyo modelo de datos está orientado a objetos y almacenan y recuperan objetos en los que se almacena estado y comportamiento.

Base de datos orientada a objetos (BDOO):
una colección persistente y compatible de objetos definida por un modelo de datos orientado a objetos.
Modelo de datos orientado a objetos:
Un modelo de datos que captura la semántica de los objetos soportados en la programación orientada a objetos.
Sistema Gestor de Bases de Datos Orientadas a Objetos (SGBDOO)
:
El gestor de una base de datos orientada a objetos.
Conceptos relacionados con las BDOO:
Las bases de datos orientadas a objetos surgen básicamente para tratar las deficiencias de los modelos anteriores y para proporcionar eficiencia y sencillez a las aplicaciones.
Estructura:
La forma de identificar objetos es mediante un identificador de objetos (OID, Object Identifier), único para cada objeto. Generalmente este identificador no es accesible ni modificable para el usuario (modo de aumentar la integridad de entidades y la integridad referencial). Los OID son independientes del contenido. Es decir, si un objeto cambia los valores de atributos, sigue siendo el mismo objeto con el mismo OID. Si dos objetos tienen el mismo estado pero diferentes OID, son equivalentes pero tienen identidades diferentes.
Clases

conjuntos de objetos que comparten propiedades y comportamiento.
Método
es un código ejecutable asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena mediante un ”mensaje”.
Mensaje
una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros.
Propiedad, atributo o variable
datos asociados a un objeto o a una clase de objetos.
Herencia
las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que pertenecen.
Encapsulamiento
cada objeto está aislado del exterior, es un modulo natural, y la aplicación entera se reduce a una agregación de objetos. El aislamiento protege a los datos asociados a un objeto de su modificación por quien no tenga derecho a acceder a ellos, eliminando efectos secundarios e interacciones.
Polimorfismo
métodos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre, aunque el comportamiento del método varíe según el objeto al que se aplica..
A la vez que creamos un tipo de objeto, realizamos la especificación de los métodos. Los métodos se pueden ejecutar sobre los objetos de su mismo tipo.
Métodos constructores de tipo
Métodos de comparación
Todos los tipos de objetos tienen asociado por defecto un método que se encarga de construir nuevos objetos de ese. El nombre del método es el mismo que el nombre del tipo, y sus parámetros que tenemos en dicho método son los atributos del tipo de objetos.
Estos métodos son utilizados para que se pueda comparar los objetos de un cierto tipo. Esta acción se lleva a cabo indicando cuál es el criterio de comparación. Para poder hacer posible la realización de una comparación es necesario escoger entre un método MAP o un método ORDER:
Un método de MAP es utilizado para indicar cuál de los atributos del tipo se va a utilizar para ordenar los objetos del tipo.
Un método ORDER utiliza los atributos del objeto sobre el que se ejecuta para realizar un cálculo y compararlo con otro objeto del mismo tipo que toma como argumento de entrada.
Herencia de tipos
Herencia múltiple
La herencia de tipos surge por la posibilidad de definir tipos que sean subtipos de otros supertipos. Aparte de que los subtipos definen sus propios atributos y sus métodos, los subtipos heredan los atributos y los métodos definidos para sus supertipos. Los subtipos son capaces de redefinir los métodos que heredan, que es lo que conocemos como polimorfismo.
La herencia múltiple permite a las clases heredar variables y métodos de múltiples superclases. La relación entre clases y subclases se representa mediante un grafo acíclico dirigido en vez de un árbol.
Sirve para navegar en el contenido de la base de objetos y hacer consultas.
Es un idem ObjectManager, pero dentro del Eclipse.
GITIO494-F
Universidad Tecnológica del Norte de Guanajuato
Alumnas:
García Ramos Liliana Guadalupe
Rangel García Isela Sarai
Ventajas
Desventajas
Han aparecido muchos prototipos experimentales y sistemas de bases de datos comerciales orientados a objetos.
Entre los primeros se encuentran los sistemas:
ORION
OpenOODB
IRIS
ODE
El proyecto ENCORE/ObServer
Y entre los sistemas disponibles en el mercado están:
GEMSTONE/OPAL de ServicLogic
ONTOS de Ontologic
Objectivity de Objectivity Inc.
Versant de Versant Technologies
ObjecStore de Object Design
O2 de O2 Technology
Mayor capacidad de modelado.
Ampliabilidad.
Lenguaje de consulta más expresivo.
Adecuación a las aplicaciones avanzadas de base de datos.
Mayores prestaciones.
Carencia de un modelo de datos universal.
Carencia de experiencia.
Carencia de estándares.
Competencia.
La optimización de consultas compromete la encapsulacion.
Full transcript