Bases
de datos orientadas a objetos
Una base de datos orientada a objetos es una colección de objetos en los
que su estado, comportamiento y relaciones son definidos de acuerdo con un
modelo de datos orientado a objetos.
En tal sentido, considerando y tomando en cuenta este concepto, las bases
de datos orientadas a objetos (BDOO) están diseñadas para capturar los datos de
un sistema de negocio, por ellos pueden ser considerados como un conjunto de
objetos que interactúan entre sí.
Un sistema gestor de base de datos orientada a objetos (SGBDOO) permiten
que la manipulación, manejo de la información mediante objetos resguardando la
información con objetos persistentes de forma transparente, con un control de
concurrencia, recuperación de datos, consultas asociativas, integración directa
con lenguajes de programación orientado a objetos y otras capacidades propias
del paradigma orientado a objetos.
Primera y segunda generación de BDOO
La
primera generación de Sistemas Gestores de Bases de Datos
Orientadas a Objetos (SGBDOO) data de 1986 cuando la compañia Graphael lanza
G-Base, en 1987 Servio Corp introdujo GemStone, luego en 1988 Ontologic lanza
su sistema VBase y la empresa Simbolics lanza Statice. Todos ellos con la
finalidad de apoyar lenguajes persistentes como los usados para la inteligencia
artificial.
La
segunda generación se caracterizó por emplear una arquitectura
cliente-servidor, y puede considerarse a partir del lanzamiento de Ontos en
1989, así como de Objet Design, Objectivity y de Versant Objet Technology.
BASES
DE DATOS DEDUCTIVAS
Una base de datos deductiva
es, en esencia, un programa lógico; mapeo de relaciones base hacia hechos, y reglas
que son usadas para definir nuevas relación es en términos de las relaciones
base y el procesamiento de consultas. Los sistemas Bases de Datos Deductivas
intentan modificar el hecho de que los datos requeridos residan en la memoria
principal (por lo que la gestión de almacenamiento secundario no viene al
caso)de modo que un SGBD se amplíe para manejar datos que residen en
almacenamiento secundario.
En un sistema de Bases de
Datos Deductivas por lo regular se usa un lenguaje declarativo para especificar
reglas. Con lenguaje declarativo se quiere decir un lenguaje que define lo que
un programa desea lograr, en vez de especificarlos detalles de cómo lograrlo.
Se especifican de manera
similar a como se especifican las relaciones, excepto que no es necesario incluir
los nombres de los atributos.Recordemos que una tupla en una relación
describe algún hecho del mundo real cuyo significado queda determinado en parte
por los nombres de los atributos.En una
Base de Datos Deductiva, el significado
del valor del atributo en una tupla queda determinado exclusivamente por su
posición dentro de la tupla. Se parecen un poco a las
vistas relacionales. Especifican relaciones virtuales que no están
almacenadas realmente, pero que se pueden formar a partir de los hechos aplicando
mecanismos de inferencia basados en las especificaciones de las reglas.
La
principal diferencia entre las reglas y las vistas es que en las primeras
puede haber recursión y por tanto pueden producir vistas que no es posible definir
en términos de las vistas relacionales estándar. Las BDD buscan derivar nuevos
conocimientos a partir de datos existentes proporcionando interrelaciones del
mundo real en forma de reglas. Utilizan mecanismos internos para la evaluación y
la optimizan.
Necesidad
de la inferencia en las aplicaciones
La inferencia en las
aplicaciones nacen con el afán de ofrecer una respuesta a las necesidades
planteadas por los usuarios y por las aplicaciones avanzadas, en donde se
necesitan herramientas semánticamente más ricas que las provistas por las Bases
de Datos Relacionales, aparecen recientes aplicaciones de los sistemas de bases
de datos que consiste en ofrecer recursos para definir Reglas Deductivas y
Activas que permitan deducir, inferir u obtener información nueva a partir de
los datos almacenados o sucesos condicionados.
La finalidad de estas
aplicaciones es incorporar a las Bases de Datos Relacionales los beneficios de
la inferencia lógica como instrumento para la
formalización integrada de los aspectos estáticos y dinámicos del
modelado relacional de la base de datos en las aplicaciones
Estas características de reaccionar ante condiciones son definidas en el esquema de base de datos, de manera que, se elimina la responsabilidad de la aplicación que hace uso de la misma a gestionar tales eventos; la manera más común de definirlos en el esquema es a través de “triggers”, característica que maneja la gran mayoría de los motores de BD más conocidos en el mercado.
Si la Base de Datos sólo contiene datos actuales, tenemos una Base de Datos Instantánea. Cuando la información de los datos deja de ser cierta se actualiza o se elimina el registro anterior.
Una Base de datos temporal es un sistema de gestión de base de datos (DBMS) el cual implementa y trata con especial énfasis aspectos temporales, teniendo un modelo de datos temporal y una versión temporal del lenguaje de consulta estructurado, (SQL). Entre las diversas propuestas de implementación, la más extendida es TSQL2.
Especificando más profundamente, los aspectos temporales normalmente incluyen tiempo de validez y tiempo de transacción. La combinación de estos dos atributos forman un dato bitemporal
Dato Bitemporal: es la combinación del tiempo de validez y el tiempo transaccional.
El almacenamiento de los datos temporales en una base de datos temporal es diferente al de una base de datos no temporal, en la que el periodo de tiempo adjunto al dato, expresa cuando fue valido o almacenando en la base.
El problema de las aproximaciones OODB y ORDB es la carencia de un estándar de facto, como ocurre en el caso del modelo relacional. Las diferentes alternativas de modelos de datos que se están empleando actualmente, son definidas normalmente por los propios desarrolladores del modelo temporal.
Facilidades
de la negación estratificada
Contar con negación
estratificada permite la capacidad de modelado natural de objetos del mundo
real, encapsulando su estructura y comportamiento, que proporcionan los modelos
orientados a objetos; la capacidad de derivación de nuevos conocimiento a
partir de datos existentes, suministrando vínculos del mundo real en forma de
reglas, que proporcionan los modelos de datos deductivos; y, además, la
capacidad de almacenamiento persistente que proporcionan los sistemas
administradores de bases de datos.
Bases de datos Activas
como proveedores de mecanismos de apoyo.
Una base de datos activa,
son aquellas bases de datos capaces de detectar situaciones de interés y de
actuar en consecuencia. (Mota Noviembre 2005). El mecanismo que se utiliza se
parece a las reglas deproducción utilizadas en el área de inteligencia
artificial.
Reglas
de integridad
El poder especificar reglas
con una serie de acciones que se ejecutan automáticamente cuando se producen
ciertos eventos, es una de las mejoras de los sistemas de gestión de bases de
datos que se consideran de gran importancia desde hace algún tiempo. Mediante
estas reglas se puede hacer respetar reglas de integridad, generar datos
derivados, controlar la seguridad o implementar reglas de negocio. De hecho, la
mayoría de los sistemas relacionales comerciales disponen de disparadores
(triggers). Se han realizado mucha investigación sobre lo que debería ser un
modelo general de bases de datos activas desde que empezaron a aparecer los
primeros disparadores. El modelo que se viene utilizando para especificar bases
de datos activas es el modelo evento–condición–acción (ECA).
El concepto de Bases de
Datos Activas (conocidas también bajo las siglas SGBDA) se define en la
capacidad del motor de manejar eventos al momento en que los datos sufren
cambios como modificación, eliminación o actualización (más adelante se verá
que existen otros eventos), es decir, cuando se producen ciertas condiciones
ejecuta de forma automática ciertas acciones, además el motor de BD debe ser
capaz de monitorizar y reaccionar ante eventos de manera oportuna y eficiente.
Estas características de reaccionar ante condiciones son definidas en el esquema de base de datos, de manera que, se elimina la responsabilidad de la aplicación que hace uso de la misma a gestionar tales eventos; la manera más común de definirlos en el esquema es a través de “triggers”, característica que maneja la gran mayoría de los motores de BD más conocidos en el mercado.
La característica que se
viene utilizando para especificar bases de datos activas es el modelo
evento–condición–acción, por ejemplo: Tras la modificación de la tabla persona,
se chequea su fecha de nacimiento y se procede a actualizar el campo edad, de
todos los registros.
Por supuesto esta definición
descrita en lenguaje fácilmente entendible para los humanos, debe traducirse al
lenguaje de programación del motor, haciendo uso de los triggers para disparar
la acción tras el evento modificación.
Características de ejecución
de reglas ECA
* Un SGBDA tiene un modelo
de ejecución
* Un SGBDA debe ofrecer
diferentes modelos de acoplamiento
* Un SGBDA debe implementar
modos de consumo
* Un SGBDA debe gestionar la
historia de eventos
* Un SGBDA debe implementar
resolución de conflictos
Base
de datos temporal
Una Base de datos temporal
es un sistema de gestión de base de datos (DBMS) el cual implementa y trata con
especial énfasis aspectos temporales, teniendo un modelo de datos temporal y
una versión temporal del lenguaje de consulta estructurado, (SQL). Entre las
diversas propuestas de implementación, la más extendida es TSQL2.
Especificando más
profundamente, los aspectos temporales normalmente incluyen tiempo de validez y
tiempo de transacción. La combinación de estos dos atributos forman un dato
bitemporal
Visión
global de la necesidad de incluir apoyo a la base de datos para información que
varía con el tiempo
Si insertamos información en
la Base de Datos y jamás la modificamos ni la borramos, tenemos una Base de
Datos Histórica.
Si la Base de Datos sólo contiene datos actuales, tenemos una Base de Datos Instantánea. Cuando la información de los datos deja de ser cierta se actualiza o se elimina el registro anterior.
Una base de datos temporales
es una base de datos que soporta algunos aspectos de tiempo, no contando el tiempo
definido por el usuario.
Una Base de datos temporal es un sistema de gestión de base de datos (DBMS) el cual implementa y trata con especial énfasis aspectos temporales, teniendo un modelo de datos temporal y una versión temporal del lenguaje de consulta estructurado, (SQL). Entre las diversas propuestas de implementación, la más extendida es TSQL2.
Especificando más profundamente, los aspectos temporales normalmente incluyen tiempo de validez y tiempo de transacción. La combinación de estos dos atributos forman un dato bitemporal
Tiempo de validez indica el
período en el cual un hecho es verdad en el mundo real.
Tiempo de transacción indica
el período en el cual un hecho está guardado en la base de datos.
Dato Bitemporal: es la combinación del tiempo de validez y el tiempo transaccional.
Estos dos períodos no tienen que ser idénticos
para un mismo hecho. Imagine una base de datos temporal guardando datos sobre
el siglo veinte. El tiempo de validez sobre esos hechos estará comprendido
entre el año 1901 y el año 2000, sin embargo el tiempo transaccional empezará
cuando insertemos esos hechos en la base de datos, por ejemplo, 25 de diciembre
del 2006.
El almacenamiento de los datos temporales en una base de datos temporal es diferente al de una base de datos no temporal, en la que el periodo de tiempo adjunto al dato, expresa cuando fue valido o almacenando en la base.
La
proposición de bases de datos orientadas por objetos temporales
El empleo del sistema de
tipos en la orientación a objetos para estructurar el espacio de diseño de los
modelos de objetos temporales e identificar las dependencias dentro, y entre,
las diferentes dimensiones permite simplificar la representación del dominio
temporal. Se trata de definir un tipo abstracto de dato tiempo para modelar las
características más generales y en cada uno de los subtipos que se definan a
partir de él, especializar aquellas semánticas que sean necesarias para cada
una de las aplicaciones que se intenten abordar.
El problema de las aproximaciones OODB y ORDB es la carencia de un estándar de facto, como ocurre en el caso del modelo relacional. Las diferentes alternativas de modelos de datos que se están empleando actualmente, son definidas normalmente por los propios desarrolladores del modelo temporal.
Aportaciones similares a las
comentadas, ha sido la presentada por Bertino en la que, tras la definición del
modelo de datos, se propone una extensión del mismo para incorporar esa
dimensión temporal. Aunque actualmente se están planteando otras opciones que
emplean el estándar ODMG, todavía no existen trabajos con una base formal
fuerte en este campo, como los relativos al chequeo y sistema de tipos.
Autores:
Betancourt Erika
Carrasquel Nayesca
Figueredo Maria
Morillo Anny
Villegas Yuritza
Autores:
Betancourt Erika
Carrasquel Nayesca
Figueredo Maria
Morillo Anny
Villegas Yuritza
0 comentarios:
Publicar un comentario