stringtranslate.com

Tiempo de transacción

En las bases de datos temporales , el tiempo de transacción es el tiempo en el que se han cargado algunos datos en una base de datos . El tiempo en el que una transacción es válida se puede llamar período de tiempo de la transacción . Es una línea de tiempo técnica controlada por una capa de integración (por ejemplo, un almacén de datos ). [1] Más formalmente, es el punto en el tiempo durante el cual un hecho almacenado en la base de datos se considera verdadero.

El período es un intervalo basado en los tiempos de carga (llamado fecha y hora de carga en el almacén de datos [1] [2] ), también llamado marca de tiempo de inscripción . [1] Otros nombres del intervalo son línea de tiempo de aserción [3] ),  línea de tiempo de estado [3] ) o línea de tiempo técnica . [3] SQL:2011 tiene soporte para el tiempo de transacción a través de las llamadas tablas con versiones del sistema . [4] [5] [6] [7]

Por muchas razones, el tiempo de transacción (cuando los datos llegan desde un sistema de origen ) casi siempre es diferente del tiempo válido (cuando el evento ocurrió en el mundo real). Para que un almacén de datos informe de manera inequívoca lo que realmente sucedió en el pasado, debe poder combinar estas dos líneas de tiempo. [1] En los modelos de datos bitemporales , el tiempo válido y el tiempo de transacción se pueden representar bidimensionalmente en un sistema de coordenadas cartesianas . Cuando los datos se entregan desde la capa de integración y se deben presentar en una capa de presentación (a menudo en un modelo dimensional o una tabla amplia ), a menudo es deseable tener los datos en una sola línea de tiempo.

En una tabla de base de datos, el tiempo de transacción se representa a menudo como un intervalo que permite al sistema "eliminar" entradas mediante el uso de dos columnas de tabla start_tty end_tt. El intervalo de tiempo se cierra [ en su límite inferior y se abre ) en su límite superior . [8] Cuando se desconoce el tiempo de transacción final, se puede considerar como until_changed. Los investigadores académicos y algunos sistemas de gestión de bases de datos relacionales (RDBMS) han representado until_changedcon la marca de tiempo más grande admitida o la palabra clave forever. Esta convención es una solución técnica alternativa y no es técnicamente precisa.

Historia

El término tiempo de transacción fue acuñado por Richard T. Snodgrass y su estudiante de doctorado Ilsoo Ahn (1986). [9]

A partir de diciembre de 2011, ISO/IEC 9075, Lenguaje de base de datos SQL:2011 Parte 2: SQL/Foundation incluyó cláusulas en las definiciones de tabla para definir "tablas con versiones del sistema" (es decir, tablas de tiempo de transacción).

Véase también

Referencias

  1. ^ abcd "Una introducción suave a los desafíos de los datos bitemporales - Roelant Vos".
  2. ^ "Enlaces transaccionales - AutomateDV". automate-dv.readthedocs.io . Consultado el 10 de febrero de 2024 .
  3. ^ abc "Un seguimiento no tan amable de los desafíos de los datos bitemporales - Roelant Vos".
  4. ^ rwestMSFT (16 de octubre de 2023). "Tablas temporales: SQL Server". learn.microsoft.com . Consultado el 18 de junio de 2024 .
  5. ^ "Tablas con versiones del sistema". Base de conocimientos de MariaDB . Consultado el 18 de junio de 2024 .
  6. ^ "Portal de ayuda de SAP". help.sap.com . Consultado el 18 de junio de 2024 .
  7. ^ "Tablas temporales de períodos de sistema". www.ibm.com . Consultado el 18 de junio de 2024 .
  8. ^ Kedar, SV (2013). Sistemas de gestión de bases de datos. Pune, India: Publicaciones técnicas.
  9. ^ Snodgrass; Ilsoo Ahn (1986). "Bases de datos temporales" (PDF) . Computadora . 19 (9): 35. doi :10.1109/MC.1986.1663327.