SlideShare a Scribd company logo
1 of 30
Temporalidad en bases de
            datos

  "El mejor profeta del futuro es el pasado"


http://en.wikipedia.org/wiki/Temporal_database
Motivaciones
• La información es “variante en el tiempo” .
• El tiempo es un atributo esencial de la información.
• Convencionalmente las bases de datos representan el
  estado de los datos en un solo momento en el tiempo.
• Muchas aplicaciones necesitan representar la
  información acerca del pasado.
   – financiera(pagos)
   – Médicos(historia del paciente)
   – Gobierno
• Las bases de datos temporales, es un sistema que
  administra los datos considerando la variación en el
  tiempo de los mismos.
    JOSÉ CUARTAS          BASES DE DATOS                 2
Motivaciones
• El objetivo de un sistema que administra el tiempo, es
  describir la evolución histórica de los datos. Idealmente
  de manera que esta descripción sea lo suficientemente
  precisa como para ser capaz de justificar o mantener la
  trazabilidad de los cambios en la propia información.

   “The database is not the database-the log is the database, and the
   database is just an optimized access path to the most recent version
   of the log.”
   B.-M. SCHUELER




    JOSÉ CUARTAS             BASES DE DATOS                               3
Transacciones del tiempo

       1 2       4        8   10       15 16 17           25   28       30       33       41 42       45   47 48   51   53

   u
       b
             f
                      c
                                   d
                                       g

  id
                                                      p
                                                                    j
                                                                             k
                                                                                      i
                                                                                          m
                                                                                                  e




La base de datos evoluciona atravez de inserciones y actualizaciones


                 JOSÉ CUARTAS                     BASES DE DATOS                                                             4
Comparaciones
• Las DB temporales:
   – Mantiene información histórica.
   – Los cambios se consideran como adiciones a la información
     almacenada en la base de datos.
   – Incorpora la noción de tiempo en el Sistema.
   – Acceso eficiente a los estados pasados.
• Las DB convencionales:
   –   Evolucionan a través de transacciones de un estado a otro.
   –   Los cambios se consideran como modificaciones en el estado.
   –   No hay información sobre el pasado.
   –   Es una Instantánea de la empresa.


       JOSÉ CUARTAS         BASES DE DATOS                           5
Bases datos temporales
• Modelos de datos temporales: es una extensión del
  modelo relacional mediante la cual se adicionan
  atributos temporales a cada relación.

• Lenguaje de consulta temporales: TQUEL, SQL3

• Adicionan métodos temporales de indexación y el
  procesamiento de consultas.




     JOSÉ CUARTAS     BASES DE DATOS                  6
Tiempo de validez en las DB
• El tiempo evoluciona continuamente.
• Cada objeto es una línea que representa un intervalo de
  tiempo .
• Tiempo valido
  •   Es el tiempo en que un echo es una realidad.
  •   Es el periodo para el cual un echo es real.
• 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)


      JOSÉ CUARTAS            BASES DE DATOS                                  7
Tiempo de validez en las DB
• La eliminación física, no permite saber los estados
  anteriores de los datos.
• La noción de “futuro”, “presente” y “pasado” es relativo a
  cierto instante(timestamp) del echo que ocurrio.


• Requisitos para los métodos de indexación:
   – Almacena la última colección de objetos de un intervalo.
   – Soporta cambios de adicionar/ eliminar/ modi en la colección.
   – Consulta eficiente de los intervalos de la colección
       • Consultas por fecha y hora.
       • Consulta por Intervalo (período).


     JOSÉ CUARTAS                BASES DE DATOS                      8
Tiempo de transacción en la DB
• Tiempo de transacción
   – Describe el punto en el tiempo cuando la información fue ingresada en
     la base de datos.
El tiempo evoluciona de forma discreta, por lo general se
asocia con el número de transacción.
Soporte a las operaciones para un intervalo de tiempo:
  – Las actualizaciones pueden hacerse sólo con el estado actual,
    el pasado no se puede cambiar
  – Se tiene la caracteristica de regressar l estado anterior conocido
    como "Rollback"
  – La eliminación es lógica (no se elimina físicamente!).



     JOSÉ CUARTAS            BASES DE DATOS                                  9
Tiempo de transacción en la DB
Requisitos para los métodos de indexación:

• Almacenamiento lógico de los estados del pasado.
• Soporte para los cambios en los objetos o datos
  actuales(adicionar/eliminación/modificación).
• Acceso y consulta eficiente de cualquier estado de la
  base de datos.




     JOSÉ CUARTAS      BASES DE DATOS                     10
Taxonomía del tiempo
• Los tiempos de transacción y de validez de una
  BD no tienen porqué coincidir para un mismo
  hecho:
  – El tiempo de transacción viene marcado por el reloj
    interno del sistema.
  – El tiempo de validez de un hecho puede ser:
     • Posterior al tiempo de transacción, lo que se llama actividad
       proactiva.
     • Anterior al tiempo de transacción, lo que se llama actividad
       retroactiva.
     • Simultáneo al tiempo de transacción, se llama actividad simultánea.


    JOSÉ CUARTAS           BASES DE DATOS                               11
Bitemporalidad
• Tablas o DB Bi-temporal:
  – Soporta ambas nociones del tiempo.
• Una base de datos de transacciones en tiempo,
  pero el historial de cada uno es un intervalo
  (además de los otros atributos de los registros)
• Mantener la evolución de una colección dinámica
  de intervalo de los objetos
• En cada fecha y hora, es una base de datos de
  tiempo válido

    JOSÉ CUARTAS       BASES DE DATOS          12
Bitemporalidad
                 C(t1)             C(t2)                C(t3)               C(t4)               C(t5)

                                               t3                 t4                  t5             t
      t1                   t2

                 v                 v                    v                   v                   v

 Iy                   Iy    Iz          Iy      Iz           Iy                  Iy
                                                  Iw                   Iw                  Iw

Ix                   Ix                Ix                   Ix                  Ix




           JOSÉ CUARTAS                     BASES DE DATOS                                      13
Información y cambios de
               estado
• Preguntas:
• cómo se relaciona con la estructura de la información y
  cómo un cambio de estado afecta a la información?.
• Enfoques :
• Información transitoria:
   – la característica principal es que la alteración y
     borrado de los registros existentes destruyen
     físicamente el contenido previo de la información.
   – Este tipo de información se encuentra habitualmente
     en los entornos operacionales.

     JOSÉ CUARTAS      BASES DE DATOS                  14
Información y cambios de
              estado
• Información periódica:
  – Un registro nunca se borra físicamente ni su
    contenido es modificado.
  – siempre se añaden nuevos registros para reflejar
    actualizaciones o incluso borrados.
  – La información periódica, por tanto, contiene un
    completo registro de los cambios que han ocurrido.




    JOSÉ CUARTAS     BASES DE DATOS                 15
Información y cambios de
              estado
• Información tipo “snapshot”:
  – Snapshot o fotografía representa una vista estable de
    la información tal y como existe en un momento dado
    del tiempo.
  – Es un tipo especial de información periódica.
  – Generalmente los “snapshots”:
     • Representan la información en un momento concreto del
       pasado, utilizado para reporte no modificables.
     • Una serie de “snapshots” tomadas en distintos puntos del
       tiempo proporcionar una vista de la historia de los datos.



    JOSÉ CUARTAS         BASES DE DATOS                             16
TIPOS DE HISTORIA en la DB
• Historia: se trata de datos históricos almacenados en
  tablas de una base de datos relacional.




    JOSÉ CUARTAS     BASES DE DATOS                  17
TIPOS DE HISTORIA en la DB
• Historia reconstruible: datos sobre el estado
  pasado de algo, obtenidos restaurando un archivo de
  backup y aplicando después las transacciones de
  actualización capturadas en un archivo de log del DB.

     • Requiere la intervención del personal de TI y por tanto no es
       en tiempo real.

     • Son copias de respaldo periódicas de archivos o bases de
       datos y un log de transacciones

     • No existen datos históricos recuperables.

    JOSÉ CUARTAS         BASES DE DATOS                            18
TIPOS DE HISTORIA en la DB
• Historia consultable: datos sobre el estado pasado
  de algo, obtenidos mediante una consulta SQL, sin la
  necesidad de restaurar archivos de backup y reaplicar
  transacciones capturadas en el archivo de log del DB.

  – Este tipo de historia puede ser en tiempo real.

  – La historia consultable se almacena como un registro de
    eventos(Historia de eventos) o como un registro de estados(
    Historia de estados).



    JOSÉ CUARTAS           BASES DE DATOS                         19
TIPOS DE HISTORIA en la DB
Historia de eventos: datos sobre eventos que
han alterado el estado de las cosas.
  – Estos datos se capturan como transacciones en
    tablas.
  – Este método consiste en almacenar el estado inicial
    de algo y posteriormente almacenar todas las
    transacciones que lo van actualizando.




    JOSÉ CUARTAS      BASES DE DATOS                      20
TIPOS DE HISTORIA en la DB
Historia de estados: datos históricos capturados como
copias del estado actual de un objeto, bien periódicamente
o en respuesta a un evento de actualización específico.
   – Es un método de gestión de datos temporales que mantiene
     todas las inserciones y borrados con sus dos imágenes, anterior
     y posterior, para cada modificación.

   – Se aplica para todas aquellas datos que tienen estados, es
     decir, que pueden cambiar a lo largo del tiempo.

   – La historia de estados se puede almacenar bien como
     fotografías o como versiones.

     JOSÉ CUARTAS         BASES DE DATOS                          21
TIPOS DE HISTORIA en la DB
• Historia fotografiada: conjunto coordinado de
  copias en una base de datos relacional.
  – Las fotografías (o snapshots) se toman habitualmente
    considerando la base de datos completa, o también a veces
    incluyendo únicamente un subconjunto de tablas relacionadas
    semánticamente.
  – los snapshots pierden cualquier actualización que haya sido
    sobrescrita por actualizaciones posteriores del mismo dato
    realizadas antes de la siguiente fotografía.
  – Es una forma poco eficiente de registrar la historia, ya que se
    crean copias de todas las filas, hayan cambiado o no.
  – Su mejor característica mantener una copia exacta de cómo
    estaban los datos en el momento de tomar la fotografía.
    JOSÉ CUARTAS         BASES DE DATOS                          22
TIPOS DE HISTORIA en la DB
• Historia versionada: son actualizaciones
  lógicas de filas individuales, implementadas sin
  sobrescribir datos, “retirando” la versión actual
  del objeto y reemplazándola con una nueva
  versión que contiene los datos actualizados del
  objeto.
• registrar la historia, ya que sólo se crean nuevas
  filas cuando ocurre un cambio versionable.


    JOSÉ CUARTAS    BASES DE DATOS                23
METODOS GESTION DEL
          TIEMPO
• En estas situaciones, el software no requiere
  que los estados anteriores a la actualización se
  encuentren disponibles para ser consultados.
  Para este tipo de datos y requisitos de software,
  la necesidad de los datos históricos es tan poco
• frecuente, que es suficiente la solución de
  mantener historia reconstruible.




    JOSÉ CUARTAS    BASES DE DATOS                24
METODOS GESTIÓN DEL
          TIEMPO
• Hay diferentes métodos, cada método satisface un
  conjunto de requisitos que se dese almacenar en cuanto
  a gestión del tiempo.
• Cuando no se requiere que los estados anteriores a la
  actualización se encuentren disponibles para ser
  consultados.
   – la necesidad de los datos históricos es tan poco frecuente, que es
     suficiente la solución de mantener historia reconstruible.




     JOSÉ CUARTAS             BASES DE DATOS                              25
METODOS GESTIÓN DEL
                   TIEMPO
En diferentes soluciones lo único que se necesita conocer en tiempo real es cómo
son las cosas en el momento actual, por consiguiente, no se requiere que los
estados anteriores a la actualización se encuentren disponibles para ser
consultados.
Generalmente se resuelve agregando La columna fx_alta que es la fecha en que
se insertó la fila. Y la columna fx_ult_act, cuyo valor se debe actualizar cada vez
que se actualiza una fila, es la fecha de última actualización de esa fila en
particular.
Tabla                                               Para tener en la cuenta
atributo_PK          (Atributo clave primaria)
                                                         No se sabe cuántas veces ha cambiado la
atributo_FK          (Atributo clave foránea)
atributo                                                 fila.
atributo                                                 No se tiene conocimiento de qué columna
…                                                        o columnas cambiaron en actualizaciones
                     (Fecha de la inserción
fx_alta              de la fila)                         anteriores.
                     (Fecha de la última                 se ha perdido información de la historia
fx_ult_act           actualización de la fila)
                                                         consultable, se debe usar la historia
                                                         reconstruible
              JOSÉ CUARTAS                       BASES DE DATOS                                26
METODOS GESTIÓN DEL
                       TIEMPO
•      Es frecuente que se requiera tener una cantidad mínima de historia
       disponible en tiempo. La forma más frecuente de hacerlo es implementar un
       borrado lógico en lugar de un borrado físico.
         –    Aunque el borrado lógico se puede realizar de varias formas, es conveniente generar una
              nueva columna para la fecha de borrado, fx_baja con dominio de fecha, la cual preserva y no
              sobrescribe la información de metadato de fecha de última actualización,.
         –    Con esta opción no es necesario el indicador de borrado ya que las filas eliminadas con
              borrado lógico son aquellas cuya fecha de borrado no es nula
    Tabla
    atributo_PK
    atributo_FK
                         (Atributo clave primaria)      Para tener en la cuenta
                         (Atributo clave foránea)
    atributo                                            •   En la actualización, la fila tal como se insertó
    atributo                                                originalmente se pierde.
    …                                                   • Se pierden todas las actualizaciones excepto
                         (Fecha de la inserción
    fx_alta              de la fila)                        la última, incluso es imposible saber si hubo
                                                            o no actualizaciones previas.
                         (Fecha de la última            La actualización están sobrescribiendo la
    fx_ult_act           actualización de la fila)      información anterior, manteniendo únicamente
                         (Fecha del borrado
    fx_eliminacion       lógico de la fila)             el último estado o estado actual de los objetos.

                  JOSÉ CUARTAS                       BASES DE DATOS                                      27
METODOS GESTIÓN DEL
               TIEMPO
•   Para poder mostrar el estado de cualquier objeto tal como era en cualquier
    momento de su vida”, es preciso retener el estado de los objetos antes de su
    actualización además del estado posterior a la actualización, es decir, es
    preciso mantener la historia de los objetos.
•   Puesto que un requisito del modelo de gestión del tiempo dice que debe
    permitir dar respuesta a las preguntas en tiempo real
• Para tener en la cuenta
•   En las tablas normales las filas representan objetos, en las tablas versionadas
    las filas representan versiones de objetos.
•   Para un sistema versionado se recomienda implementa un modelo bitemporal
     –   Manja dos tipos de tiempo, el Tiempo de validez de los datos y el Tiempo de transacción de los
         datos.
     –   Con un modelo bitemporal es posible corregir errores dejando constancia de que así ha sido y
         permitiendo por tanto reconstruir la situación de la tabla en cualquier instante del tiempo.
     –   Este es el enfoque de “preservar la evidencia” en la corrección de errores, que no puede ser
         abordado con un modelo unitemporal.

          JOSÉ CUARTAS                    BASES DE DATOS                                           28
METODOS GESTIÓN DEL
                       TIEMPO
Tabla                                              Para tener en la cuenta
atributo_PK            (Atributo clave primaria)   Las fechas de validez:
atributo_FK            (Atributo clave foránea)    • Fecha de inicio de versión (fx_ver_ini): el instante
atributo
atributo                                              en el que esa versión del objeto comienza a ser la
…                                                     versión actualmente en vigor.
                       Fecha de inicio de          • Fecha de fin de versión (fx_ver_fin): el instante en
Fx_ver_inicial         versión
                                                      el que esa versión del objeto deja de estar en vigor.
Fx_ver_final           Fecha de fin de versión     Las fechas que tiempo de transacción
                       (Fecha de la inserción
fx_alta                de la fila)
                                                   • Fecha de creación (fx_alta): el instante en el que
                                                      esa fila fue físicamente insertada en la tabla.
                       (Fecha de la última         • Fecha de borrado lógico (fx_baja): el instante en
fx_ult_act             actualización de la fila)      el que esa fila deja de considerarse válida.
                       (Fecha del borrado
fx_eliminacion         lógico de la fila)




                 JOSÉ CUARTAS                         BASES DE DATOS                                    29
Para tener en la cuenta
• Las bases de datos temporales y en muchos casos las
  tablas bitemporales aunque al parecer conceptualmente
  solo es agregar atributos de tiempo de validez y tiempo
  de transacción, se debe tener en la cuenta lo siguiente:
   • Las restricciones de integridad necesitan desarrollos extras como
     procedimientos almacenados para verificar las restricciones temporales.
   • Para la consulta se necesitan operadores temporales con el fin de
     facilitar la gestión de los datos temporales, esto operadores deben
     permitir la granularidad en la consulta, lo cual es la precisión con la que
     se representa la información variante en el tiempo .
   • Se debe agregan al modelo ER la expresividad necesaria para
     representar la semántica de la información que varía con el tiempo.


      JOSÉ CUARTAS              BASES DE DATOS

More Related Content

What's hot

18. memorias lifo y fifo
18. memorias lifo y fifo18. memorias lifo y fifo
18. memorias lifo y fifoKlaudita Toloza
 
Archivos Secuenciales Indexados
Archivos Secuenciales IndexadosArchivos Secuenciales Indexados
Archivos Secuenciales Indexadosjennifergu17
 
Exposicion organización directa
Exposicion organización directaExposicion organización directa
Exposicion organización directaTiFoN87
 
Normalizacion 1 -_3_fn
Normalizacion 1 -_3_fnNormalizacion 1 -_3_fn
Normalizacion 1 -_3_fnLuis Jherry
 
Tendencias en bases de datos
Tendencias en bases de datosTendencias en bases de datos
Tendencias en bases de datosmillosvale
 
Base de datos temporales
Base de datos temporalesBase de datos temporales
Base de datos temporalesYeider Torres
 
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOS
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOSORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOS
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOSJxzmin Elizxbeth
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexadolesster ostorga
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Julicamargo
 

What's hot (20)

18. memorias lifo y fifo
18. memorias lifo y fifo18. memorias lifo y fifo
18. memorias lifo y fifo
 
Archivos Secuenciales Indexados
Archivos Secuenciales IndexadosArchivos Secuenciales Indexados
Archivos Secuenciales Indexados
 
Segmentacion de memoria
Segmentacion de memoriaSegmentacion de memoria
Segmentacion de memoria
 
Exposicion organización directa
Exposicion organización directaExposicion organización directa
Exposicion organización directa
 
Manejo De Datos
Manejo De DatosManejo De Datos
Manejo De Datos
 
Normalizacion 1 -_3_fn
Normalizacion 1 -_3_fnNormalizacion 1 -_3_fn
Normalizacion 1 -_3_fn
 
Circuitos secuenciales
Circuitos secuencialesCircuitos secuenciales
Circuitos secuenciales
 
Tendencias en bases de datos
Tendencias en bases de datosTendencias en bases de datos
Tendencias en bases de datos
 
Proyecto sistema operativo suspes
Proyecto sistema operativo suspesProyecto sistema operativo suspes
Proyecto sistema operativo suspes
 
Base de datos temporales
Base de datos temporalesBase de datos temporales
Base de datos temporales
 
Base de datos
Base de datos Base de datos
Base de datos
 
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOS
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOSORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOS
ORIGEN DE LAS BASES DE DATOS ORIENTADA A OBJETOS
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexado
 
B. manejo de concurrencia
B.  manejo de concurrenciaB.  manejo de concurrencia
B. manejo de concurrencia
 
MongoDB: la BBDD NoSQL más popular del mercado
MongoDB: la BBDD NoSQL más popular del mercadoMongoDB: la BBDD NoSQL más popular del mercado
MongoDB: la BBDD NoSQL más popular del mercado
 
Ejemplo dfd
Ejemplo dfdEjemplo dfd
Ejemplo dfd
 
Base de Datos Orientada a Objetos
Base de Datos Orientada a ObjetosBase de Datos Orientada a Objetos
Base de Datos Orientada a Objetos
 
Bases de datos orientadas a objetos
Bases de datos orientadas a objetosBases de datos orientadas a objetos
Bases de datos orientadas a objetos
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.
 

Similar to Bases de datos temporales

Realizando procesos de carga incremental exitosos con SQL Server
Realizando procesos de carga incremental exitosos con SQL ServerRealizando procesos de carga incremental exitosos con SQL Server
Realizando procesos de carga incremental exitosos con SQL ServerSpanishPASSVC
 
Introducción Bodegas de Datos (DWH)
Introducción Bodegas de Datos (DWH)Introducción Bodegas de Datos (DWH)
Introducción Bodegas de Datos (DWH)Iván Polanía
 
Charla SEC, 19 de diciembre de 2013
Charla SEC, 19 de diciembre de 2013Charla SEC, 19 de diciembre de 2013
Charla SEC, 19 de diciembre de 2013Christian Sifaqui
 
Exposición de base de datos en programación
Exposición de base de datos en programaciónExposición de base de datos en programación
Exposición de base de datos en programaciónstphanymaiden
 
Diseño fisico
Diseño fisicoDiseño fisico
Diseño fisicoelylupita
 
Bases de datos
Bases de datosBases de datos
Bases de datosMarilupe
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datosJAPR
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datosGabriela
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datosmat3matik
 
10 bases de datos
10 bases de datos10 bases de datos
10 bases de datosMIGUEL
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datosRamon
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datosMaria
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datoskristel24
 
Attachment.ashx (10)
Attachment.ashx (10)Attachment.ashx (10)
Attachment.ashx (10)samantha
 
Clase 10-bases%20de%20 datos[1]
Clase 10-bases%20de%20 datos[1]Clase 10-bases%20de%20 datos[1]
Clase 10-bases%20de%20 datos[1]tanztanz
 

Similar to Bases de datos temporales (20)

Realizando procesos de carga incremental exitosos con SQL Server
Realizando procesos de carga incremental exitosos con SQL ServerRealizando procesos de carga incremental exitosos con SQL Server
Realizando procesos de carga incremental exitosos con SQL Server
 
Base de datos
Base de datosBase de datos
Base de datos
 
Introducción Bodegas de Datos (DWH)
Introducción Bodegas de Datos (DWH)Introducción Bodegas de Datos (DWH)
Introducción Bodegas de Datos (DWH)
 
Charla SEC, 19 de diciembre de 2013
Charla SEC, 19 de diciembre de 2013Charla SEC, 19 de diciembre de 2013
Charla SEC, 19 de diciembre de 2013
 
Exposición de base de datos en programación
Exposición de base de datos en programaciónExposición de base de datos en programación
Exposición de base de datos en programación
 
Bases de datos jorge luis
Bases de datos jorge luisBases de datos jorge luis
Bases de datos jorge luis
 
Presentacion metodos de investigacion ITSF
Presentacion metodos de investigacion ITSFPresentacion metodos de investigacion ITSF
Presentacion metodos de investigacion ITSF
 
Diseño fisico
Diseño fisicoDiseño fisico
Diseño fisico
 
taller de bd
taller de bdtaller de bd
taller de bd
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
10 bases de datos
10 bases de datos10 bases de datos
10 bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
Clase 10-bases de datos
Clase 10-bases de datosClase 10-bases de datos
Clase 10-bases de datos
 
Attachment.ashx (10)
Attachment.ashx (10)Attachment.ashx (10)
Attachment.ashx (10)
 
Clase 10-bases%20de%20 datos[1]
Clase 10-bases%20de%20 datos[1]Clase 10-bases%20de%20 datos[1]
Clase 10-bases%20de%20 datos[1]
 
Clae 10
Clae 10Clae 10
Clae 10
 

More from josecuartas

Seguridad en el almacenamiento de las bases de datos
Seguridad en el almacenamiento de las bases de datosSeguridad en el almacenamiento de las bases de datos
Seguridad en el almacenamiento de las bases de datosjosecuartas
 
Anti patrones SQL, Modelo conceptual
Anti patrones SQL, Modelo conceptualAnti patrones SQL, Modelo conceptual
Anti patrones SQL, Modelo conceptualjosecuartas
 
Tableros de control o Dashboard
Tableros de control o DashboardTableros de control o Dashboard
Tableros de control o Dashboardjosecuartas
 
Visualizacion de datos
Visualizacion de datosVisualizacion de datos
Visualizacion de datosjosecuartas
 
Calidad de datos
Calidad de datosCalidad de datos
Calidad de datosjosecuartas
 
De los datos a la información
De los datos a la informaciónDe los datos a la información
De los datos a la informaciónjosecuartas
 
Datos semiestructurados Xml
Datos semiestructurados XmlDatos semiestructurados Xml
Datos semiestructurados Xmljosecuartas
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos josecuartas
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicojosecuartas
 
índices en bases de datos
índices en bases de datosíndices en bases de datos
índices en bases de datosjosecuartas
 
Sql DDL Lenguaje de definición de datos
Sql DDL Lenguaje de definición de datosSql DDL Lenguaje de definición de datos
Sql DDL Lenguaje de definición de datosjosecuartas
 
Seguridad en bases de datos
Seguridad en bases de datosSeguridad en bases de datos
Seguridad en bases de datosjosecuartas
 
Los datos en el disco duro
Los datos en el disco duroLos datos en el disco duro
Los datos en el disco durojosecuartas
 
Digramas de venn aplicado en las bases datos
Digramas de venn aplicado en las bases datosDigramas de venn aplicado en las bases datos
Digramas de venn aplicado en las bases datosjosecuartas
 
Bases de datos avanzado NOSQL
Bases de datos avanzado NOSQLBases de datos avanzado NOSQL
Bases de datos avanzado NOSQLjosecuartas
 
Disco duro bases datos
Disco duro bases datosDisco duro bases datos
Disco duro bases datosjosecuartas
 
Fuga de información
Fuga de informaciónFuga de información
Fuga de informaciónjosecuartas
 
Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)josecuartas
 
Sql dinamico14042011
Sql dinamico14042011Sql dinamico14042011
Sql dinamico14042011josecuartas
 

More from josecuartas (20)

Seguridad en el almacenamiento de las bases de datos
Seguridad en el almacenamiento de las bases de datosSeguridad en el almacenamiento de las bases de datos
Seguridad en el almacenamiento de las bases de datos
 
Anti patrones SQL, Modelo conceptual
Anti patrones SQL, Modelo conceptualAnti patrones SQL, Modelo conceptual
Anti patrones SQL, Modelo conceptual
 
Tableros de control o Dashboard
Tableros de control o DashboardTableros de control o Dashboard
Tableros de control o Dashboard
 
Visualizacion de datos
Visualizacion de datosVisualizacion de datos
Visualizacion de datos
 
Calidad de datos
Calidad de datosCalidad de datos
Calidad de datos
 
De los datos a la información
De los datos a la informaciónDe los datos a la información
De los datos a la información
 
Datos semiestructurados Xml
Datos semiestructurados XmlDatos semiestructurados Xml
Datos semiestructurados Xml
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
 
índices en bases de datos
índices en bases de datosíndices en bases de datos
índices en bases de datos
 
Sql DDL Lenguaje de definición de datos
Sql DDL Lenguaje de definición de datosSql DDL Lenguaje de definición de datos
Sql DDL Lenguaje de definición de datos
 
Seguridad en bases de datos
Seguridad en bases de datosSeguridad en bases de datos
Seguridad en bases de datos
 
Los datos en el disco duro
Los datos en el disco duroLos datos en el disco duro
Los datos en el disco duro
 
Digramas de venn aplicado en las bases datos
Digramas de venn aplicado en las bases datosDigramas de venn aplicado en las bases datos
Digramas de venn aplicado en las bases datos
 
Bases de datos avanzado NOSQL
Bases de datos avanzado NOSQLBases de datos avanzado NOSQL
Bases de datos avanzado NOSQL
 
Disco duro bases datos
Disco duro bases datosDisco duro bases datos
Disco duro bases datos
 
Fuga de información
Fuga de informaciónFuga de información
Fuga de información
 
Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)
 
SQL avanzado
SQL avanzadoSQL avanzado
SQL avanzado
 
Sql dinamico14042011
Sql dinamico14042011Sql dinamico14042011
Sql dinamico14042011
 

Recently uploaded

SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!CatalinaAlfaroChryso
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONamelia poma
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxpaogar2178
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfEduardoJosVargasCama1
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...jlorentemartos
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...Ars Erótica
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdfDemetrio Ccesa Rayme
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...JAVIER SOLIS NOYOLA
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...JoseMartinMalpartida1
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 

Recently uploaded (20)

SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 

Bases de datos temporales

  • 1. Temporalidad en bases de datos "El mejor profeta del futuro es el pasado" http://en.wikipedia.org/wiki/Temporal_database
  • 2. Motivaciones • La información es “variante en el tiempo” . • El tiempo es un atributo esencial de la información. • Convencionalmente las bases de datos representan el estado de los datos en un solo momento en el tiempo. • Muchas aplicaciones necesitan representar la información acerca del pasado. – financiera(pagos) – Médicos(historia del paciente) – Gobierno • Las bases de datos temporales, es un sistema que administra los datos considerando la variación en el tiempo de los mismos. JOSÉ CUARTAS BASES DE DATOS 2
  • 3. Motivaciones • El objetivo de un sistema que administra el tiempo, es describir la evolución histórica de los datos. Idealmente de manera que esta descripción sea lo suficientemente precisa como para ser capaz de justificar o mantener la trazabilidad de los cambios en la propia información. “The database is not the database-the log is the database, and the database is just an optimized access path to the most recent version of the log.” B.-M. SCHUELER JOSÉ CUARTAS BASES DE DATOS 3
  • 4. Transacciones del tiempo 1 2 4 8 10 15 16 17 25 28 30 33 41 42 45 47 48 51 53 u b f c d g id p j k i m e La base de datos evoluciona atravez de inserciones y actualizaciones JOSÉ CUARTAS BASES DE DATOS 4
  • 5. Comparaciones • Las DB temporales: – Mantiene información histórica. – Los cambios se consideran como adiciones a la información almacenada en la base de datos. – Incorpora la noción de tiempo en el Sistema. – Acceso eficiente a los estados pasados. • Las DB convencionales: – Evolucionan a través de transacciones de un estado a otro. – Los cambios se consideran como modificaciones en el estado. – No hay información sobre el pasado. – Es una Instantánea de la empresa. JOSÉ CUARTAS BASES DE DATOS 5
  • 6. Bases datos temporales • Modelos de datos temporales: es una extensión del modelo relacional mediante la cual se adicionan atributos temporales a cada relación. • Lenguaje de consulta temporales: TQUEL, SQL3 • Adicionan métodos temporales de indexación y el procesamiento de consultas. JOSÉ CUARTAS BASES DE DATOS 6
  • 7. Tiempo de validez en las DB • El tiempo evoluciona continuamente. • Cada objeto es una línea que representa un intervalo de tiempo . • Tiempo valido • Es el tiempo en que un echo es una realidad. • Es el periodo para el cual un echo es real. • 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) JOSÉ CUARTAS BASES DE DATOS 7
  • 8. Tiempo de validez en las DB • La eliminación física, no permite saber los estados anteriores de los datos. • La noción de “futuro”, “presente” y “pasado” es relativo a cierto instante(timestamp) del echo que ocurrio. • Requisitos para los métodos de indexación: – Almacena la última colección de objetos de un intervalo. – Soporta cambios de adicionar/ eliminar/ modi en la colección. – Consulta eficiente de los intervalos de la colección • Consultas por fecha y hora. • Consulta por Intervalo (período). JOSÉ CUARTAS BASES DE DATOS 8
  • 9. Tiempo de transacción en la DB • Tiempo de transacción – Describe el punto en el tiempo cuando la información fue ingresada en la base de datos. El tiempo evoluciona de forma discreta, por lo general se asocia con el número de transacción. Soporte a las operaciones para un intervalo de tiempo: – Las actualizaciones pueden hacerse sólo con el estado actual, el pasado no se puede cambiar – Se tiene la caracteristica de regressar l estado anterior conocido como "Rollback" – La eliminación es lógica (no se elimina físicamente!). JOSÉ CUARTAS BASES DE DATOS 9
  • 10. Tiempo de transacción en la DB Requisitos para los métodos de indexación: • Almacenamiento lógico de los estados del pasado. • Soporte para los cambios en los objetos o datos actuales(adicionar/eliminación/modificación). • Acceso y consulta eficiente de cualquier estado de la base de datos. JOSÉ CUARTAS BASES DE DATOS 10
  • 11. Taxonomía del tiempo • Los tiempos de transacción y de validez de una BD no tienen porqué coincidir para un mismo hecho: – El tiempo de transacción viene marcado por el reloj interno del sistema. – El tiempo de validez de un hecho puede ser: • Posterior al tiempo de transacción, lo que se llama actividad proactiva. • Anterior al tiempo de transacción, lo que se llama actividad retroactiva. • Simultáneo al tiempo de transacción, se llama actividad simultánea. JOSÉ CUARTAS BASES DE DATOS 11
  • 12. Bitemporalidad • Tablas o DB Bi-temporal: – Soporta ambas nociones del tiempo. • Una base de datos de transacciones en tiempo, pero el historial de cada uno es un intervalo (además de los otros atributos de los registros) • Mantener la evolución de una colección dinámica de intervalo de los objetos • En cada fecha y hora, es una base de datos de tiempo válido JOSÉ CUARTAS BASES DE DATOS 12
  • 13. Bitemporalidad C(t1) C(t2) C(t3) C(t4) C(t5) t3 t4 t5 t t1 t2 v v v v v Iy Iy Iz Iy Iz Iy Iy Iw Iw Iw Ix Ix Ix Ix Ix JOSÉ CUARTAS BASES DE DATOS 13
  • 14. Información y cambios de estado • Preguntas: • cómo se relaciona con la estructura de la información y cómo un cambio de estado afecta a la información?. • Enfoques : • Información transitoria: – la característica principal es que la alteración y borrado de los registros existentes destruyen físicamente el contenido previo de la información. – Este tipo de información se encuentra habitualmente en los entornos operacionales. JOSÉ CUARTAS BASES DE DATOS 14
  • 15. Información y cambios de estado • Información periódica: – Un registro nunca se borra físicamente ni su contenido es modificado. – siempre se añaden nuevos registros para reflejar actualizaciones o incluso borrados. – La información periódica, por tanto, contiene un completo registro de los cambios que han ocurrido. JOSÉ CUARTAS BASES DE DATOS 15
  • 16. Información y cambios de estado • Información tipo “snapshot”: – Snapshot o fotografía representa una vista estable de la información tal y como existe en un momento dado del tiempo. – Es un tipo especial de información periódica. – Generalmente los “snapshots”: • Representan la información en un momento concreto del pasado, utilizado para reporte no modificables. • Una serie de “snapshots” tomadas en distintos puntos del tiempo proporcionar una vista de la historia de los datos. JOSÉ CUARTAS BASES DE DATOS 16
  • 17. TIPOS DE HISTORIA en la DB • Historia: se trata de datos históricos almacenados en tablas de una base de datos relacional. JOSÉ CUARTAS BASES DE DATOS 17
  • 18. TIPOS DE HISTORIA en la DB • Historia reconstruible: datos sobre el estado pasado de algo, obtenidos restaurando un archivo de backup y aplicando después las transacciones de actualización capturadas en un archivo de log del DB. • Requiere la intervención del personal de TI y por tanto no es en tiempo real. • Son copias de respaldo periódicas de archivos o bases de datos y un log de transacciones • No existen datos históricos recuperables. JOSÉ CUARTAS BASES DE DATOS 18
  • 19. TIPOS DE HISTORIA en la DB • Historia consultable: datos sobre el estado pasado de algo, obtenidos mediante una consulta SQL, sin la necesidad de restaurar archivos de backup y reaplicar transacciones capturadas en el archivo de log del DB. – Este tipo de historia puede ser en tiempo real. – La historia consultable se almacena como un registro de eventos(Historia de eventos) o como un registro de estados( Historia de estados). JOSÉ CUARTAS BASES DE DATOS 19
  • 20. TIPOS DE HISTORIA en la DB Historia de eventos: datos sobre eventos que han alterado el estado de las cosas. – Estos datos se capturan como transacciones en tablas. – Este método consiste en almacenar el estado inicial de algo y posteriormente almacenar todas las transacciones que lo van actualizando. JOSÉ CUARTAS BASES DE DATOS 20
  • 21. TIPOS DE HISTORIA en la DB Historia de estados: datos históricos capturados como copias del estado actual de un objeto, bien periódicamente o en respuesta a un evento de actualización específico. – Es un método de gestión de datos temporales que mantiene todas las inserciones y borrados con sus dos imágenes, anterior y posterior, para cada modificación. – Se aplica para todas aquellas datos que tienen estados, es decir, que pueden cambiar a lo largo del tiempo. – La historia de estados se puede almacenar bien como fotografías o como versiones. JOSÉ CUARTAS BASES DE DATOS 21
  • 22. TIPOS DE HISTORIA en la DB • Historia fotografiada: conjunto coordinado de copias en una base de datos relacional. – Las fotografías (o snapshots) se toman habitualmente considerando la base de datos completa, o también a veces incluyendo únicamente un subconjunto de tablas relacionadas semánticamente. – los snapshots pierden cualquier actualización que haya sido sobrescrita por actualizaciones posteriores del mismo dato realizadas antes de la siguiente fotografía. – Es una forma poco eficiente de registrar la historia, ya que se crean copias de todas las filas, hayan cambiado o no. – Su mejor característica mantener una copia exacta de cómo estaban los datos en el momento de tomar la fotografía. JOSÉ CUARTAS BASES DE DATOS 22
  • 23. TIPOS DE HISTORIA en la DB • Historia versionada: son actualizaciones lógicas de filas individuales, implementadas sin sobrescribir datos, “retirando” la versión actual del objeto y reemplazándola con una nueva versión que contiene los datos actualizados del objeto. • registrar la historia, ya que sólo se crean nuevas filas cuando ocurre un cambio versionable. JOSÉ CUARTAS BASES DE DATOS 23
  • 24. METODOS GESTION DEL TIEMPO • En estas situaciones, el software no requiere que los estados anteriores a la actualización se encuentren disponibles para ser consultados. Para este tipo de datos y requisitos de software, la necesidad de los datos históricos es tan poco • frecuente, que es suficiente la solución de mantener historia reconstruible. JOSÉ CUARTAS BASES DE DATOS 24
  • 25. METODOS GESTIÓN DEL TIEMPO • Hay diferentes métodos, cada método satisface un conjunto de requisitos que se dese almacenar en cuanto a gestión del tiempo. • Cuando no se requiere que los estados anteriores a la actualización se encuentren disponibles para ser consultados. – la necesidad de los datos históricos es tan poco frecuente, que es suficiente la solución de mantener historia reconstruible. JOSÉ CUARTAS BASES DE DATOS 25
  • 26. METODOS GESTIÓN DEL TIEMPO En diferentes soluciones lo único que se necesita conocer en tiempo real es cómo son las cosas en el momento actual, por consiguiente, no se requiere que los estados anteriores a la actualización se encuentren disponibles para ser consultados. Generalmente se resuelve agregando La columna fx_alta que es la fecha en que se insertó la fila. Y la columna fx_ult_act, cuyo valor se debe actualizar cada vez que se actualiza una fila, es la fecha de última actualización de esa fila en particular. Tabla Para tener en la cuenta atributo_PK (Atributo clave primaria) No se sabe cuántas veces ha cambiado la atributo_FK (Atributo clave foránea) atributo fila. atributo No se tiene conocimiento de qué columna … o columnas cambiaron en actualizaciones (Fecha de la inserción fx_alta de la fila) anteriores. (Fecha de la última se ha perdido información de la historia fx_ult_act actualización de la fila) consultable, se debe usar la historia reconstruible JOSÉ CUARTAS BASES DE DATOS 26
  • 27. METODOS GESTIÓN DEL TIEMPO • Es frecuente que se requiera tener una cantidad mínima de historia disponible en tiempo. La forma más frecuente de hacerlo es implementar un borrado lógico en lugar de un borrado físico. – Aunque el borrado lógico se puede realizar de varias formas, es conveniente generar una nueva columna para la fecha de borrado, fx_baja con dominio de fecha, la cual preserva y no sobrescribe la información de metadato de fecha de última actualización,. – Con esta opción no es necesario el indicador de borrado ya que las filas eliminadas con borrado lógico son aquellas cuya fecha de borrado no es nula Tabla atributo_PK atributo_FK (Atributo clave primaria) Para tener en la cuenta (Atributo clave foránea) atributo • En la actualización, la fila tal como se insertó atributo originalmente se pierde. … • Se pierden todas las actualizaciones excepto (Fecha de la inserción fx_alta de la fila) la última, incluso es imposible saber si hubo o no actualizaciones previas. (Fecha de la última La actualización están sobrescribiendo la fx_ult_act actualización de la fila) información anterior, manteniendo únicamente (Fecha del borrado fx_eliminacion lógico de la fila) el último estado o estado actual de los objetos. JOSÉ CUARTAS BASES DE DATOS 27
  • 28. METODOS GESTIÓN DEL TIEMPO • Para poder mostrar el estado de cualquier objeto tal como era en cualquier momento de su vida”, es preciso retener el estado de los objetos antes de su actualización además del estado posterior a la actualización, es decir, es preciso mantener la historia de los objetos. • Puesto que un requisito del modelo de gestión del tiempo dice que debe permitir dar respuesta a las preguntas en tiempo real • Para tener en la cuenta • En las tablas normales las filas representan objetos, en las tablas versionadas las filas representan versiones de objetos. • Para un sistema versionado se recomienda implementa un modelo bitemporal – Manja dos tipos de tiempo, el Tiempo de validez de los datos y el Tiempo de transacción de los datos. – Con un modelo bitemporal es posible corregir errores dejando constancia de que así ha sido y permitiendo por tanto reconstruir la situación de la tabla en cualquier instante del tiempo. – Este es el enfoque de “preservar la evidencia” en la corrección de errores, que no puede ser abordado con un modelo unitemporal. JOSÉ CUARTAS BASES DE DATOS 28
  • 29. METODOS GESTIÓN DEL TIEMPO Tabla Para tener en la cuenta atributo_PK (Atributo clave primaria) Las fechas de validez: atributo_FK (Atributo clave foránea) • Fecha de inicio de versión (fx_ver_ini): el instante atributo atributo en el que esa versión del objeto comienza a ser la … versión actualmente en vigor. Fecha de inicio de • Fecha de fin de versión (fx_ver_fin): el instante en Fx_ver_inicial versión el que esa versión del objeto deja de estar en vigor. Fx_ver_final Fecha de fin de versión Las fechas que tiempo de transacción (Fecha de la inserción fx_alta de la fila) • Fecha de creación (fx_alta): el instante en el que esa fila fue físicamente insertada en la tabla. (Fecha de la última • Fecha de borrado lógico (fx_baja): el instante en fx_ult_act actualización de la fila) el que esa fila deja de considerarse válida. (Fecha del borrado fx_eliminacion lógico de la fila) JOSÉ CUARTAS BASES DE DATOS 29
  • 30. Para tener en la cuenta • Las bases de datos temporales y en muchos casos las tablas bitemporales aunque al parecer conceptualmente solo es agregar atributos de tiempo de validez y tiempo de transacción, se debe tener en la cuenta lo siguiente: • Las restricciones de integridad necesitan desarrollos extras como procedimientos almacenados para verificar las restricciones temporales. • Para la consulta se necesitan operadores temporales con el fin de facilitar la gestión de los datos temporales, esto operadores deben permitir la granularidad en la consulta, lo cual es la precisión con la que se representa la información variante en el tiempo . • Se debe agregan al modelo ER la expresividad necesaria para representar la semántica de la información que varía con el tiempo. JOSÉ CUARTAS BASES DE DATOS