Semana 01
Semana 01
Semana 01
SISTEMAS MANEJADORES
DE BASES DE DATOS
ORIENTADAS A OBJETOS
(SMBDOO)
Ing. de Sistemas UPP BDOO
INTRODUCCIÓN A LOS
SISTEMAS DE BASES DE
DATOS OO (SBDOO)
Ing. de Sistemas UPP BDOO
INTRODUCCIÓN
INTRODUCCIÓN
INTRODUCCIÓN
INTRODUCCIÓN
INTRODUCCIÓN
INTRODUCCIÓN
ANTECEDENTES
Ing. de Sistemas UPP BDOO
PRINCIPIOS DE OO
Ing. de Sistemas UPP BDOO
• Persistencia
• Control de Concurrencia
• Recuperación
• Consistencia
• Lenguaje de Consulta.
Ing. de Sistemas UPP BDOO
ESTRUCTURA DE OBJETOS
JERARQUÍA DE CLASES.
• En una BD existen objetos que responden a los
mismos mensajes, utilizan los mismos métodos y
tienen variables del mismo nombre y tipo.
• Nombre
• Dirección
• Teléfono
• Especialidad
• Semestre
• Grupo
Ing. de Sistemas UPP BDOO
Maestro:
• Nombre
• Dirección
• Teléfono
• Número económico
• Plaza
• RFC
• Especialidad
• Semestre
• Grupo.
• Y en Maestro:
• Número Económico
• Plaza
• RFC.
Ing. de Sistemas UPP BDOO
CLASE PERSONA
Nombre
Dirección
Teléfono
HERENCIA
SUPERCLASE
SUBCLASES
Especialidad Número
Semestre Económico
Grupo Plaza
RFC
PROBLEMAS A
RESOLVER POR LOS
SMBDOO
Ing. de Sistemas UPP BDOO
HERENCIA.
COMPLEJIDAD DE MODIFICACIÓN.
COMPLEJIDAD DE MODIFICACIÓN.
DISEÑO DE DISTRIBUCIÓN
DE OBJETOS
Ing. de Sistemas UPP BDOO
DISTRIBUCIÓN DE OBJETOS.
DISTRIBUCIÓN DE OBJETOS.
• Se tiene que decidir si la fragmentación se realiza
solamente sobre los atributos, duplicando los métodos en
cada fragmento.
DISTRIBUCIÓN DE OBJETOS.
• Y si la fragmentación se lleva a cabo con respecto a los
métodos, es necesario distinguir entre métodos simples y
métodos compuestos.
DISTRIBUCIÓN DE OBJETOS.
PARTICIONAMIENTO DE CLASE HORIZONTAL
DISTRIBUCIÓN DE OBJETOS.
PARTICIONAMIENTO DE CLASE VERTICAL
DISTRIBUCIÓN DE OBJETOS.
PARTICIONAMIENTO DE CLASE VERTICAL
COLOCACIÓN DE OBJETOS.
• El problema de la colocación de datos, para las BDOO,
involucra la ubicación de métodos y clases.
COLOCACIÓN DE OBJETOS.
1. Comportamiento Local – Objeto Local. Tanto el
comportamiento (método) del objeto, como los
argumentos se encuentran de manera local.
COLOCACIÓN DE OBJETOS.
3. Comportamiento Remoto – Objeto Local. Es el caso
inverso del punto 2.
REPLICACIÓN
• La replicación agrega una nueva dimensión al problema
del diseño.
ARQUITECTURA DE UNA
BDOO
Ing. de Sistemas UPP BDOO
ARQUITECTURA.
• Una manera de desarrollar un sistema distribuido es la de
Cliente/Servidor.
PRODUCTO PROVEEDOR
A pesar del hecho de que estos dos son menos “puros” que
smalltalk.
Ing. de Sistemas UPP BDOO
• Clase de CILINDRO{
ALTURA FLOTANTE ();
RADIO FLOTANTE ();
VOLUMEN FLOTANTE ();
AREA FLOTANTE ();
};
VENTAJAS EN BDOO.
• Está su flexibilidad, y soporte para el manejo de tipos de
datos complejos.
• Por ejemplo, en una BD convencional:
• Si una empresa adquiere varios clientes por referencia de
clientes- servicio.
• Pero la BD existente, que mantiene la información de clientes y
sus compras, no tiene un campo para registrar quién proporcionó
la referencia.
• O de qué manera fue dicho contacto.
• O si debe compensarse con una comisión, sería necesario
reestructurar la BD para añadir este tipo de modificaciones o de
datos.
Ing. de Sistemas UPP BDOO
VENTAJAS EN BDOO.
• Por el contrario, en una BDOO, el usuario puede añadir
una "subclase" de la clase de clientes para manejar las
modificaciones que representan los clientes por
referencia.
VENTAJAS EN BDOO.
• Esto presenta la ventaja adicional que una BDOO puede
ajustarse a usar siempre el espacio de los campos que son
necesarios, eliminando espacio desperdiciado en registros
con campos que nunca usan.
POSIBLES DESVENTAJAS.
• Al considerar la adopción de la tecnología orientada a
objetos, la inmadurez del mercado de BDOO constituye
una posible fuente de problemas.
POSIBLES DESVENTAJAS.
• Sin embargo, el "Grupo Manejador de Objetos" (OMG),
es una organización Internacional de proveedores de
sistemas de información y usuarios dedicada a promover
estándares para el desarrollo de aplicaciones y sistemas
OO en ambientes de cómputo en red.
POSIBLES DESVENTAJAS.
• Sin embargo, para aquellos usuarios que planean:
RENDIMIENTO.
• Esto hace que las BDOO pasen más rápido del objeto A al
objeto B que las BDR.
RENDIMIENTO.
• Así, incluso sin alguna afinación especial, una BDOO es
en general más rápida en esta mecánica de caza-
apuntadores.
RENDIMIENTO.
• Sin embargo, en una BDR, los objetos de la implantación
se traducen en representaciones tabulares que
generalmente se dispersan en varias tablas.
RENDIMIENTO.
• Esto es relativamente directo en una BDOO, puesto que
representa el primer nivel de agrupamiento.
RENDIMIENTO.
• Un SMBDOO debe satisfacer dos criterios:
• Ser un Sistema OO.
• Y ser un Sistema de Administración de BD.
Características de SGBDOO .
RENDIMIENTO.
• Como se puede observar la Persistencia, al igual que la
Concurrencia, son características del SMBDOO
heredadas tanto del SMBD como del Modelo de Objetos.
RENDIMIENTO.
• De forma que todos los programas interpreten de la
misma manera el estado almacenado.
RENDIMIENTO.
• Persistencia.- Es la capacidad que tiene el programador
para que sus datos se conserven al finalizar la ejecución
de un proceso, de forma que se puedan reutilizar en otros
procesos.
RENDIMIENTO.
• Recuperación.- Proporcionar como mínimo el mismo
nivel de recuperación que los SBD actuales.
• De forma que, tanto en caso de fallo de hardware como de
software, el sistema pueda retroceder hasta un estado
coherente de los datos.
RENDIMIENTO.
• Gestión del almacenamiento secundario…
• Estos mecanismos evitan que los programadores tengan que escribir
programas para mantener índices, asignar el almacenamiento en
disco, o trasladar los datos entre el disco y la memoria principal.
• Facilidad de Consultas.-
• Permitir al usuario hacer cuestiones sencillas a la BD. Este tipo de
consultas tienen como misión proporcionar la información solicitada
por el usuario de una forma correcta y rápida.
Ing. de Sistemas UPP BDOO
INTEGRIDAD.
• Los sistemas de objetos no soportan generalmente
restricciones de integridad declarativas.
CONTROVERSIA.
• Las BD de Objetos surgieron por la necesidad que tenían
los programadores de aplicaciones OO, de conservar sus
objetos en una memoria persistente.
CONTROVERSIA.
• Muchas características que son esenciales en los SBD,
sencillamente no fueron requerimiento en el mundo de los
objetos, al menos no originalmente.
CONTROVERSIA.
CONTROVERSIA.
• En esencia el modelo de objetos dice que podemos
almacenar cualquier cosa que queramos, cualquier
estructura de datos que podamos definir.
CONTROVERSIA.
• Por lo tanto no impone límites sobre cuáles estructuras de
datos son permitidas en el nivel físico.
CONTROVERSIA.
• Mientras que los sistemas basados en objetos no lo hacen.
Ing. de Sistemas UPP BDOO
SMBD DE
OBJETOS/RELACIONALES
Ing. de Sistemas UPP BDOO
SMBD O/R.
• Recientemente varios fabricantes han lanzado productos
SMBD “de Objetos/Relacionales”.
• Ejemplos de éstos:
SMBD O/R.
• La idea general es que los productos deben soportar
posibilidades de objetos y relacionales.
SMBD O/R.
• Es decir, sólo se necesita implementarlo, completa y
adecuadamente.
SMBD O/R.
• Los fabricantes de SMBD deberían ser motivados para
que hicieran lo que, de hecho, están tratando de hacer.
SMBD O/R.
• Estos paquetes incluyen soporte para el manejo de Texto
Sofisticado, el procesamiento de Series de Tiempo
Financieras, el Análisis de Datos Geoespaciales
(cartográficos), etc.
SMBD O/R.
• Sin embargo, la incorporación de un nuevo paquete de
tipos al sistema es una labor no trivial.
SMBD O/R.
• Consideraciones para el sistema:
El compilador del lenguaje de consultas debe ser capaz de
analizar sintácticamente y verificar el tipo que se solicita. Por lo
que tiene que saber acerca de esos tipos y operadores definidos.
SMBD O/R.
• El efecto de lo anterior es que el sistema necesita ser
extensible, y en varios niveles:
SMBD O/R.
• Optimización.
Transformación de expresiones (reescritua de consultas). Debe
ser dinámico, y no preestablecido.
SMBD O/R.
• En resumen, Stonebraker está argumentado que los
“sistemas de Objetos/Relacionales están en el futuro de
todos”.
Ing. de Sistemas UPP BDOO
ESTÁNDARES
Ing. de Sistemas UPP BDOO
Lenguaje ODL
LENGUAJE ODL
• 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.
LENGUAJE ODL
LENGUAJE OML.
LENGUAJE OQL.
LENGUAJE OQL.
LENGUAJE OQL.
LENGUAJE OQL.
LENGUAJE OO.
CONCLUSIONES.
CONCLUSIONES.
CONCLUSIONES.
http://www.itlp.edu.mx/publica/revistas/revista_isc/anteriores/mzo99/b
doo.html
http://www.elrinconcito.com/articulos/BaseDatos/BasesDatos.htm
http://www.inf.udec.cl/revista/ediciones/edicion2/crossel.PDF