Consulta de datos tal como existían en el pasado
Esto se aplica a:✅ Almacén en Microsoft Fabric
El almacenamiento en Microsoft Fabric ofrece la capacidad de consultar datos históricos tal como existían en el pasado. La capacidad de consultar datos desde una marca de tiempo específica se conoce en el sector del almacenamiento de datos como viaje en el tiempo.
- El viaje en el tiempo facilita la creación de informes estables manteniendo la coherencia y la precisión de los datos a lo largo del tiempo.
- El viaje en el tiempo permite el análisis de tendencias históricas consultando varios puntos pasados en el tiempo y ayuda a anticipar las tendencias futuras.
- El viaje en el tiempo simplifica las comparaciones de bajo costo entre versiones anteriores de datos.
- El viaje en el tiempo ayuda a analizar el rendimiento a lo largo del tiempo.
- El viaje en el tiempo permite a las organizaciones auditar los cambios de datos a lo largo del tiempo, a menudo necesarios para fines de cumplimiento.
- El viaje en el tiempo ayuda a reproducir los resultados de los modelos de Machine Learning.
- El viaje en el tiempo puede consultar tablas tal como existían en un momento específico en varios almacenes de la misma área de trabajo.
¿Qué es el viaje en el tiempo?
El viaje en el tiempo en un almacenamiento de datos es una funcionalidad de bajo costo y eficaz para consultar rápidamente versiones anteriores de los datos.
Actualmente Microsoft Fabric permite la recuperación de estados anteriores de datos de las siguientes maneras:
Viaje en el tiempo con el comando FOR TIMESTAMP AS OF de T-SQL
Dentro de un elemento de almacén, las tablas se pueden consultar mediante la sintaxis OPTION FOR TIMESTAMP AS OF de T-SQL para recuperar datos en momentos pasados. La cláusula FOR TIMESTAMP AS OF
afecta a toda la instrucción, incluidas todas las tablas de almacenamiento combinadas.
Los resultados obtenidos de las consultas de viaje en el tiempo son intrínsecamente de solo lectura. Las operaciones de escritura como INSERT, UPDATE y DELETE no se pueden producir al usar la sugerencia de consulta FOR TIMESTAMP AS OF.
Use la cláusula OPTION para especificar la sugerencia de consulta FOR TIMESTAMP AS OF. Las consultas devuelven datos exactamente como existían en la marca de tiempo, especificados como YYYY-MM-DDTHH:MM:SS[.fff]
. Por ejemplo:
SELECT *
FROM [dbo].[dimension_customer] AS DC
OPTION (FOR TIMESTAMP AS OF '2024-03-13T19:39:35.28'); --March 13, 2024 at 7:39:35.28 PM UTC
Use la sintaxis CONVERT
para el formato datetime necesario con el estilo 126.
La marca de tiempo solo se puede especificar una vez mediante la cláusula OPTION
para consultas, procedimientos almacenados, vistas, etc. OPTION
se aplica a todo lo que se encuentra dentro de la instrucción SELECT.
Para obtener ejemplos, consulte Procedimiento para realizar consultas mediante el viaje en el tiempo.
Retención de datos
En Microsoft Fabric, un almacenamiento conserva y mantiene automáticamente varias versiones de los datos, hasta un período de retención predeterminado de treinta días naturales. Esto permite consultar tablas a partir de cualquier momento dado anterior. Todas las inserciones, actualizaciones y eliminaciones realizadas en el almacenamiento de datos se conservan. La retención comienza automáticamente desde el momento en que se crea el almacén. Los archivos expirados se eliminan automáticamente después del umbral de retención.
- Actualmente, una instrucción
SELECT
con la sugerencia de consultaFOR TIMESTAMP AS OF
devuelve la versión más reciente del esquema de tabla. - Los registros que se eliminan en una tabla están disponibles para consultarse tal como existían antes de la eliminación, si la eliminación está dentro del período de retención.
- Las modificaciones realizadas en el esquema de una tabla, incluidas, entre otras, agregar o quitar columnas de la tabla, no se pueden consultar antes del cambio de esquema. De forma similar, quitar y volver a crear una tabla con los mismos datos elimina su historial.
Escenarios de viaje en el tiempo
Tenga en cuenta la capacidad de viaje en el tiempo a datos anteriores en los escenarios siguientes:
Informes estables
La ejecución frecuente de trabajos de extracción, transformación y carga de datos (ETL) es esencial para mantenerse al día con el panorama de datos siempre cambiante. La capacidad de viaje en el tiempo admite este objetivo al garantizar la integridad de datos al tiempo que proporciona la flexibilidad de generar informes basados en los resultados de la consulta que se devuelven a partir de un momento dado pasado, como la noche anterior, mientras el procesamiento en segundo plano está en curso.
Las actividades de ETL se pueden ejecutar simultáneamente mientras se consulta la misma tabla que en un momento dado anterior.
Tendencias históricas y análisis predictivo
El viaje en el tiempo simplifica el análisis de los datos históricos, lo que ayuda a descubrir tendencias y patrones valiosos mediante la consulta de datos en varios períodos de tiempo anteriores. Esto facilita el análisis predictivo al habilitar la experimentación con conjuntos de datos históricos y el entrenamiento de modelos de predicción. Ayuda a anticipar tendencias futuras y ayuda a tomar decisiones bien fundamentadas y controladas por datos.
Análisis y comparación
El viaje en el tiempo ofrece una funcionalidad de solución de problemas eficaz y rentable al proporcionar una lente histórica para el análisis y la comparación, lo que facilita la identificación de la causa principal.
Análisis de rendimiento
El viaje en el tiempo puede ayudar a analizar el rendimiento de las consultas de almacenamiento a lo largo del tiempo. Esto ayuda a identificar las tendencias de degradación del rendimiento en función de las que pueden optimizar las consultas.
Auditoría y cumplimiento
El viaje en el tiempo simplifica los procedimientos de auditoría y cumplimiento al permitir a los auditores navegar por el historial de datos. Esto no solo ayuda a seguir cumpliendo las normativas, sino que también ayuda a mejorar la garantía y la transparencia.
Modelos de Machine Learning
Las funcionalidades de viaje en tiempo ayudan a reproducir los resultados de los modelos de Machine Learning al facilitar el análisis de datos históricos y simular escenarios reales. Esto mejora la confiabilidad general de los modelos para que se puedan tomar decisiones precisas basadas en datos.
Consideraciones de diseño
Consideraciones para la sugerencia de consulta OPTION FOR TIMESTAMP AS OF:
- La sugerencia de consulta
FOR TIMESTAMP AS OF
no se puede usar para crear las vistas a partir de cualquier momento dado anterior dentro del período de retención. Se puede usar para consultar las vistas a partir del momento dado pasado dentro del período de retención. - La sugerencia de consulta
FOR TIMESTAMP AS OF
solo se puede usar una vez dentro de una instrucciónSELECT
. - La sugerencia de consulta
FOR TIMESTAMP AS OF
se puede definir dentro de la instrucciónSELECT
en un procedimiento almacenado.
Permisos para el viaje en el tiempo
Cualquier usuario que tenga roles de área de trabajo de administrador, miembro, colaborador o espectador puede consultar las tablas a partir de un momento dado anterior. Cuando los usuarios consultan tablas, las restricciones impuestas por la seguridad de nivel de columna (CLS), la seguridad de nivel de fila (RLS) o el enmascaramiento dinámico de datos (DDM) se imponen automáticamente.
Limitaciones
Proporcione como máximo tres dígitos de fracciones de segundos en la marca de tiempo. Si proporciona más precisión, recibirá el mensaje de error
An error occurred during timestamp conversion. Please provide a timestamp in the format yyyy-MM-ddTHH:mm:ss[.fff]. Msg 22440, Level 16, State 1, Code line 29
.Actualmente, solo se usa la zona horaria de hora universal coordinada (UTC) para el viaje en el tiempo.
Actualmente, la retención de datos para las consultas de viaje en el tiempo es de treinta días.
Los valores
FOR TIMESTAMP AS OF
de la cláusulaOPTION
deben ser deterministas. Para obtener un ejemplo de parametrización, vea Viaje en el tiempo en un procedimiento almacenado.No se admite el viaje en el tiempo en el punto de conexión de análisis SQL del almacén de lago.
La sintaxis
OPTION FOR TIMESTAMP AS OF
solo se puede usar en las consultas que comienzan por la instrucciónSELECT
. Las consultas comoINSERT INTO SELECT
yCREATE TABLE AS SELECT
no se pueden usar junto conOPTION FOR TIMESTAMP AS OF
. Considere la posibilidad de clonar una tabla de almacén en un momento dado.Las definiciones de vista no pueden contener la sintaxis
OPTION FOR TIMESTAMP AS OF
. La vista se puede consultar con la sintaxisSELECT .. FROM <view> ... OPTION FOR TIMESTAMP AS OF
. Sin embargo, no puede consultar los datos pasados de las tablas de una vista desde antes de crear la vista.La sintaxis
FOR TIMESTAMP AS OF
del viaje en el tiempo no se admite actualmente en el modo de consulta directa de Power BI Desktop ni en la opción Explorar estos datos.