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

Bases de Datos Temporales

Presentación sobre los aspectos mas importantes de las bases de datos temporales.
by

Marcos Jose Perez

on 6 December 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Bases de Datos Temporales

Definiciones para Bases de Datos Temporales De acuerdo a Richard Snodgrass. (1986), publica un articulo en el cual define. "Una base de datos temporal como aquella que contiene datos cronológicamente variados. El tiempo es un aspecto importante de todos los fenómenos del mundo real. Los eventos ocurren en puntos específicos en el tiempo, objetos y las relaciones entre los objetos existen con el tiempo. La capacidad de modelar esta dimensión temporal del mundo real es esencial para muchas aplicaciones informáticas, tales como la contabilidad, la banca, econometría, los sistemas de información geográfica, control de inventarios, el derecho, registros médicos, multimedia, control de procesos, sistemas de reservación y el análisis de datos científicos. " Temporal Diferencia entre una BDP y BDA Bases de Datos Pasivas Ing. Marcos Perez Ing. Goichi Kawasoe Bases de Datos Temporales Jensen, C. S. et al. (1992), publicaron un paper de glosario de términos para Bases de Datos Temporales donde define una base de datos temporal aquella que soporta algún aspecto del tiempo, sin contar el tiempo definido por el usuario.

Casi todas las aplicaciones de base de datos de interés variable en el tiempo información. De hecho, es difícil identificar las aplicaciones que no involucran la gestión
de datos variables en el tiempo. Las ventajas que proporciona soporte incorporado temporal incluyen una mayor fidelidad de modelado de datos, desarrollo de aplicaciones más eficientes, y un aumento potencial de rendimiento. Jensen, C. S. et al. (1992), publicaron un paper de glosario de términos para Bases de Datos Temporales donde define al modificador "temporal" se utiliza para indicar que el concepto modificado se refiere a algún aspecto de tiempo. Temporal Time - oriented Dayal, U. et al. (1994). Un sistema de base de datos activa, en contraste, es un sistema de base de datos que vigila las situaciones de interés, y cuando se producen, desencadena una respuesta adecuada en el momento oportuno. El comportamiento deseado se expresa en las normas de producción (también llamado evento – condición - reglas de acción), que se definen y se almacenan en la base de datos. Esto tiene el beneficio que las reglas pueden ser compartidas por muchas aplicaciones programas, y el sistema de base de datos puede optimizar su implementación. Definiciones de Bases de Datos Activas El paradigma de bases de datos activas planteado por Morgenstern en 1983, describe la noción de una base de datos activa, como una metáfora de su comportamiento, el cual se concentra” en la dinámica de la interacción con los usuarios unido a la ”inteligencia” de la base de datos ” . Paton, N., Diaz, O. (1999). Bases de datos activas son capaces de controlar y reaccionar a circunstancias específicas pertinentes para una Aplicación. La semántica reactiva es centralizada y manejados de una manera oportuna. Un sistema de base de datos activa debe proporcionar un modelo de conocimiento (es decir, un mecanismo de descripción) y un modelo de ejecución (es decir, una estrategia de ejecución) para soportar este comportamiento reactivo. Bases de Datos Activas DBMS PASIVO DBMS ACTIVO 10 dulces,
por favor. 10 dulces,
por favor. ordenar
100 unidades ordenar
100 unidades ¿Cuantos dulces quedan en stock? 12 unidades
de dulces Inventario dulces: 7/12/2012 Inventario dulces: 7/12/2012

Regla: Cuando Stock de dulce <20

Ordenar 100 unidades Cronología de las Bases de Datos Activas [Eswaran 1976 Morgenstern 1983 M Stonebraker 1982] Sentaron las bases teóricas para los Sistemas Activos Mientras que el poder de los sistemas de bases de datos activas se reconoció, paso un tiempo para que una verdadera investigación de campo llegara sino hasta 1988. el campo floreció rápidamente y en la (actualidad "1994") goza de gran actividad y reconocimiento. Una serie de prototipos de investigación de gran alcance se han construido. [Hanson 1992] [Chakravarthy et al. 1989] [Dayal et al. 1988]

[McCarthy and Dayal 1989] [Gehani and Jagadish 1991 ]

[Stonebraker et al. 1990] [Stonebraker and Kemnitz 1991]

[Delcambre and Etheredge 1988] [Widom et al. 1991]

[Widom and Finkelstein 1990] [Beeri and Milo 1991]

[Cohen 1989] [Diaz et al. 1991] [Kotz et al. 1988]

[Schreier et al. 1991] [Simon et al. 1992] [Buchmann 1990]

[E Anwar 1993] [S Gatziu 1991] Investigaciones Prototipos mas importantes Sistemas de bases de datos mas representativos de la época

Ariel [Hanson 1992]

HiPAC [Chakravarthy et al. 1989, Dayal et al. 1988, McCarthy and Dayal 1989]

POSTGRES [Stonebraker et al. 1990, Stonebraker and Kemnitz 1991]

Starburst [Widom et al. 1991, Widom and Finkelstein 1990] Limitada capacidad de producción de reglas están apareciendo en los productos de bases de datos comerciales tales como Ingres [INGRES 1992], Interbase, Oracle [ORACLE 1992], Rdb [Rdb 1991], y Sybase [Howe 1986] y emergiendo el SQL2 y SQL3 como estándares. Lineas de evolución de BD BD Paralelas
BD En Tiempo Real
BD en Memoria Principal BD Distribuidas
BD Federadas
Multibases de Datos
BD Móviles
BD y Web BD Activas
BD Deductivas
BD Orientada a Objetos
BD Multimedia
BD Temporales
BD Seguras
BD Difusas
Almacenes de datos Bases de Datos Pasivas SGBD PASIVO APLICACIÓN Optimizador de
consultas Sentencias SQL Resultado Procesador
de consultas SGBD ACTIVO APLICACIÓN Datos Datos Procesador
de consultas Optimizador
de consultas Optimizador
de reglas Reglas Gestión
de eventos Programa
de reglas Bases de Datos Activas Ventajas y desventajas de BDA Ventajas.

Mayor productividad.
Mejor mantenimiento.
Reutilización de código.
Reducción del tráfico de mensajes.
Posibilidad de optimización semántica.
Facilitar el acceso a la BD a usuarios finales.

Desventajas.

Escritura de programas que consulten periódicamente el estatus de la BD.
Incorporación de código en cada uno de los programas que actualizan la BD.
Encontrar criterios de interpretación para las reglas activas. Aplicaciones de esta tecnología Según Kotz, (1994): Monitorización de situaciones. (Banco)

Gestión de flujo de trabajo.

Telecomunicaciones/Gestión de redes.

Gestión Comercial. Utilidades de un SGBD Activo INSTANTÁNEAS
(Automático) DATOS DERIVADOS
(Resultado del análisis) REGLAS DE INTEGRIDAD
(Consistencia BD) SEGURIDAD Y AUDITORÍA
(Control y seguridad) GESTIÓN DE VERSIONES
(Actualizaciones) Componentes Paton y Díaz (1998) MODELO DE CONOCIMIENTO MODELO DE EJECUCIÓN Describe la situación y la reacción correspondiente Realiza un seguimiento de la situación
y gestiona el comportamiento activo FUENTE (operación, envío de mensajes, gestión de
transacciones, excepciones, reloj, aplicación.)

GRANULARIDAD (registro, conjunto)

TIPO DE EVENTO (primitivo, compuesto)

PAPEL (obligatorio, opcional, ninguno) TIPOOS DE REGLAS

REGLAS DE INTEGRIDAD

REGLAS DE INTEGRIDAD REFERENCIAL

REGLAS DEL NEGOCIO
REGLAS DE MODELO DE DATOS
REGLAS DE RELACION
REGLAS DE DERIVACION
REGLAS DE RESTRICCION
REGLAS DE FLUJO Evento Condición PAPEL (obligatorio, opcional, ninguno) AMBITO

Sobre parámetros del evento
Sobre estado de la BD
Al comienzo de la transacción (BDT)
Cuando ocurrió el evento (BDE)
Cuando se evalúa la condición (BDc) Acción OPCIONES (operación, envío de mensajes, actualización de reglas, abortar transacción, hacer en lugar de, externo) AMBITO Al comienzo de la transacción (BDT)
Cuando ocurrió el evento (BDE)
Cuando se evalúa la condición (BDc) Modo de acoplamiento Modo de acoplamiento inmediato Algoritmo de acoplamiento
Condición-acción de tipo inmediato: GRANULARIDAD DE LA TRANSICIÓN (registro, conjunto)
PRIORIDAD (dinámica, numérica, relativa, basada en eventos, ninguna)
POLÍTICA DE EFECTOS NETO (sí, no)
POLÍTICA DE CONSUMO (reciente, cronológica, continua, acumulativa)
MODO DE PLANIFICACIÓN (paralelo, secuencial, saturación, ninguno)
MODO DE GESTIÓN DE ERRORES (abortar, ignorar, retroceder y contingencia) COMPONENTES - Momento instantaneo

- El tiempo de ocurrencia del evento

- Período de tiempo

- Intervalo de tiempo

- Elemento temporal Tipos de Datos Temporales Modelo de Transacción en Tiempo Comparaciones con una BD Convencional EL TIEMPO DE VALIDEZ EN LAS BD De acuerdo a C. S. Jensen, J. Clifford, R. Elmasri, S. K. Gadia, P. Hayes and S. Ja-
jodia (eds.), “A Glossary of Temporal Database Concepts,”

* El tiempo evoluciona constantemente

* Cada objeto es una línea que representa un intervalo de tiempo

TIEMPO VALIDO
Es el tiempo en que un hecho es una realidad

SOPORTE A LAS OPERACIONES PARA UN INTERVALO DE TIEMPO:
- Eliminación para cualquier instante de tiempo
- La inserción para cualquier instante de tiempo
- Cambio de valor (modificación) de cualquier instan te de tiempo (sin un orden predefinido)
Ejemplo de una BDT (Base de Datos Temporal) 1) Bernardo Sabina nació un soleado 6 de marzo de 1985 en Zaragoza.
Su madre registró su nacimiento al día siguiente.

2) Tras acabar sus estudios de ingeniería el 15 de junio de 2007, Bernardo se mudó ese mismo día a Torrevieja a vender hamburguesas con queso.

3) Sin embargo, no registro su mudanza hasta el 25 de Junio, ya que tenia una competición nacional de tenis de mesa.

4) Pese a tener un futuro prometedor, Bernardo murió el 20 de Septiembre de 2012 en un enfrentamiento entre criminales. El equipo forense registro su muerte el mismo día
Ejemplo de una BDT (Base de Datos Temporal) Por ejemplo en este caso el TV (Tiempo de Validez) de Bernardo Zaragoza es:

06/03/85 - 15/06/07 Ejemplo de una BDT (Base de Datos Temporal) Tiempo de Transacción y Datos Bitemporales Tiempo de Transacción (TT):

Se define como el tiempo en el que se ha incluido el hecho en la base de datos

Datos Bitemporales:

Son aquellos que combinan los TT y los TV
- Tiempo de Validez Inicial (TVI)
- Tiempo de Validez Final (TVF)
- Tiempo de Transacción Inicial (TTI)
- Tiempo de Transacción Final (TTF) Operaciones de escritura en las BDT Inserción: Se crea una versión actual del dato, TVI correspondiente y TVF = ∞

Eliminación: Actualiza el TVF del dato y pasa a ser histórico

Modificación: Eliminación e Inserción
Otras definiciones claves Un Intervalo es una tupla del tipo:
-[Inicio, Final]

-En nuestro caso: [fecha inicial, fecha final]

Se debe cumplir con las siguientes restricciones
-Existencia de un ordenamiento total

-Existencia de inicio y fin, es decir: inicio <= fin

-Función Sucesora (Granularidad)
Implementación / Operadores Al igual que existen operadores de entidades para operaciones de algebra, existen operadores para los intervalos:

- Start(I): Primer valor del intervalo

- End(I): Ultimo valor del intervalo
Start(I) <= End(I)

- In(I): Si es un valor que cumple que In(I) = TRUE, si y solo si se cumple:
((Start(I) <= s) AND (s <= End(I))
Implementación / Operadores Operadores de comparación:

Sean I1 = [i1, f1]; I2=[i2, f2], intervalos de tipo INTERVAL (TP), donde I1 = I2 si y solo si i1 = i2 y f1 = f2.
-I1 BEFORE I2: Es cierto si y solo si f1 < i2 es verdadero [i1, f1][i2, f2]

-I1 MEETS I2: Es cierto si y solo si i2 = f1 + 1 o i1 = f2 +1, es decir, alguno es verdadero [i1, f1][i2 = f1 +1, f2] ó [i2, f2][i1 = f2 +1, f1]

-I1 OVERPLAS I2: Es cierto si y solo si i1 <= f2 y i2 <= f1 son ambos ciertos. Es decir [i2 [i1, f1] f2] ó [i1 [i2, f1] f2]

-I1 DURING I2: Es cierto si y solo si i2 <= i1 y f2 >= f1 son ambos verdaderos [i2 [i1, f1] f2]

-I1 START I2: Es cierto si y solo si i1 = i2 y f1 <= f2 son ambos verdaderos [i1 = i2, f1] f2]

-I1 FINISHES I2: Es cierto si y solo si f1 = f2 y i1 >= i2 son ambos verdaderos [i2 [i1, f1 = f2]]

-I1 MERGES I2: Es cierto si y solo si I1 MEETS I2 es verdadero ó I1 OVERPLAS I2 es verdadero

-I1 CONTAINS I2: Es verdadero si y solo si I2 DURING I1 es verdadero

-DURATION (I1): Devuelve la cantidad de puntos que hay en el intervalo I1
Operadores de intervalos que producen intervalos:
- I1 UNION I2: Produce [MIN (i1, i2), MAX (f1,f2)] cuando I1 MERGES I2 es verdadero y en caso contrario indefinido

- I1 INTERSECT I2: Produce [MAX(i1,i2), MIN(f1,f2)] cuando I1 OVERPLAS I2 es verdadero y queda indefinido en otro caso

Operadores sobre conjunto de intervalos:

- UNFOLD: Desglosa intervalos en unidades menores

- COALESCE: Agruopa intervalos en unidades mayores
Implementación / Operadores CONCLUSIONES
Full transcript