martes, 18 de septiembre de 2012

Base de Datos Temporales

Una 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).
es aquella que almacena datos históricos y datos actuales.

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.


TIPOS DE BASES DE DATOS TEMPORALES

Existen 3 tipos de bases de datos temporales en función de cómo manejan el tiempo:
1. Bases de datos temporales de tiempo transaccional: Registran el tiempo de acuerdo al momento en el que se almacena un hecho
2. Bases de datos temporales de tiempo valido: Registran el tiempo en el cual un hecho ocurrió en la realidad, este sistema permite realizar correcciones sobre los datos registrados, en dicho caso solo se almacena la última versión de cada estado.
3. Bases de datos Bitemporales: Cada estado se puede modificar para actualizar el conocimiento de la realidad pasada, presente o futura, pero estas modificaciones se actualizan generando nuevas versiones de los mismos estados.
En las bases de datos temporales cada hecho registrado tiene asociada una marca de tiempo:
Tiempo valido: Conjunto de intervalos de tiempo durante los que el hecho es verdadero.
Tiempo de transacción: Intervalo de tiempo durante el cual ese hecho es cierto en el sistema de base de datos.

Tipos de Datos en una Base de Datos Temporal
Existen tres tipos de datos, que son las más comunes: 
  • dato temporal
  • dato estático 
  • dato instantáneo 
 
Dato Temporal
 
El tipo de dato temporal es el más importante, y está definido como una unión finita de intervalos, este tipo de dato es la base para la construcción de una base de datos temporal
 
Dato Estático
 
El tipo de dato estático es definido como una constante sobre todo el universo del tiempo, este tipo de dato es definido como eterno, en contraste el tipo de dato temporal es válido para un periodo o intervalo especifico de tiempo.
 
Dato Instantáneo
 
Un valor de tipo de dato instantáneo es solo valido para el instante actual.
 


COMPARACIONES 
Las BD Temporales
  • mantienen informacion historica 
  • los cambios se consideran como adiciones ala informacion almacenada en la base de datos
  • incorpora la nocion del tiempo en el sisitema
  • acceso eficiente a los estados pasados pasados
Las BD Convencionales
  • evoluciona a traves de transacciones de un estado a otro
  • los cambios se consideran como modificaciones en el estado
  • no hay informacion del pasado  

 Sistemas de Gestión de BDT

Extensiones temporales a lenguajes existentes 

  •   TSQL2

AuténticosSGBD temporales 
  • TimeDB 
  • Tiger 
  • Time Series Cartridge
TSQL2
 
TSQL2 es una extensión temporal a SQL92, posiblemente, la más conocida
En 1994 un comité encabezado por Richard T. Snodgrass (Universidad de Arizona) produjo el lenguaje de especificación ACM SIGMOD Record, semilla de TSQL2, que fue diseñado en el mismo año. 
Las construcciones e ideas de TSQL2 han sido propuestas para ser incorporadas a SQL3

TimeDB

TimeDB es un SGBDT basado en SQL
Fue desarrollado por Andreas Steiner (Instituto Federal Suizo de Tecnología, Zurich) en su Ph.D
Su última versión (2.0) está basada en Java, usa JDBC, posee una API y ofrece mayor funcionalidad.
Soporta TSQL2 

 VIIDEO SOBRE BASE DE DATOS TEMPORALES 
http://www.youtube.com/watch?v=s3JVwH_VwQc&noredirect=1