Área de stage (datos)

Un área de stage (se puede traducir como área de pruebas o área de ensayo), también llamada zona de landing (zona de aterrizaje), es un área intermedia de almacenamiento de datos utilizada para el procesamiento de los mismos durante procesos de extracción, transformación y carga (ETL). Esta área se encuentra entre la fuente de los datos y su destino, que a menudo son almacenes de datos, data marts u otros repositorios de datos.[1]

Las áreas de stage de datos son a menudo de naturaleza transitoria, su contenido se borrará antes de ejecutar un proceso de ETL o inmediatamente después de haberlo finalizado con éxito. Aunque existen arquitecturas de área stage diseñadas para mantener los datos durante largos períodos de tiempo con la finalidad de mantener un archivo de los mismos o para poder resolver problemas detectados a posteriori.

Implementación editar

Las áreas de stage se pueden implementar en forma de tablas de bases de datos relacionales, archivos de texto plano (como archivos XML o CSV) o archivos binarios propietarios almacenados en un determinado sistema de archivos.[2]​ Las arquitecturas para área de stage varían en complejidad, desde un conjunto de simples tablas relacionales en una base de datos de destino hasta instancias de bases de datos auto-contenidas o sistemas de archivos.[3]​ A pesar de que los sistemas de origen y de destino de un proceso ETL son a menudo bases de datos relacionales, no es necesario las zonas de stageque se ubican entre ambos también lo sean.[4]

Funciones editar

Las zonas stage pueden proporcionar beneficios diversos, pero la principal motivación para su uso es aumentar la eficiencia de los procesos ETL, garantizar la integridad de los datos y apoyar ciertas operaciones que aseguren la calidad de los mismos. Las funciones de un área de stage son las siguientes:

Consolidación de datos editar

Una de las principales funciones de un área de stage es la consolidación de datos de múltiples sistemas de origen.[2]​ Para ello el área de stage actúa como un gran "cubo" en el que los datos de varios sistemas de origen se ubican temporalmente para su posterior procesamiento. Adicionalmente, los datos del área de stage se suelen caracterizar con ciertos metadatos para identificar la fuente de origen, el momento (fecha/hora) en que los datos fueron cargados en esta zona u otra información que se considere relevante.

Alineación editar

La Alineación de datos consiste en la estandarización de estos a través de los múltiples sistemas de origen y la validación de las relaciones entre los registros y elementos de datos de diferentes fuentes.[2]​ Esta función está estrechamente relacionada con la administración de datos maestros,[5]​ ya que da soporte a este tipo de gestiones.

Minimizar la contención editar

Tanto el área de stage como los procesos ETL que apoya, a menudo se diseñan con el objetivo de minimizar la "discordia" en los sistemas de origen. A veces resulta más eficiente copiar los datos requeridos de un sistema de origen a la zona de stage de un golpe que tratar de recuperar únicamente registros individuales o pequeños conjuntos de registros.

El primer método, el área stage, se aprovecha de eficiencia técnica de las tecnologías de transmisión de datos, la reducción de los gastos generales a través de minimizar la necesidad de romper y volver a establecer las conexiones con los sistemas de origen y la optimización de la gestión de bloqueo de concurrencia en los sistemas de origen multi-usuario. Por su parte, los procesos ETL ejercen un alto grado de control sobre los problemas de concurrencia durante el procesamiento.

Planificación independiente de objetivos múltiples editar

El alojamiento de datos en un área de stage permite planificar de forma independiente, en cualquier momento, las operaciones de procesamiento de los mismos, pudiéndose realizar dichas operaciones cuando los diversos objetivos del negocio lo requieran.[2]​ En algunos casos, los datos se podrían llevar a la zona de stage en diferentes momentos, para luego procesarlos todos a la vez. Esta situación puede ocurrir, por ejemplo, cuando el normal desempeño de la empresa se realiza a través de múltiples zonas horarias. En otros casos, los datos se pueden cargar en el área de stage para ser procesados en diferentes momentos. El área de stage también se puede utilizar para enviar datos a múltiples sistemas de destino en diferentes momentos; por ejemplo, los datos operacionales diarios podrían ser enviados a un almacén operacional de datos (ODS), mientras que los mismos datos se podrían enviar mensualmente de forma agregada a un almacén de datos.

Detección de cambios editar

El área de stage permite realizar una detección de cambios eficaz frente a los sistemas de destino. Esta funcionalidad es particularmente útil cuando los sistemas de origen no soportan formas fiables de detección de cambios, tales como el sellado de tiempo (timestamping) impuesto por el sistema, el control de cambios (trazabilidad) o captura de datos modificados (CDC, change data capture).

Limpieza de datos editar

La limpieza de datos consiste en la identificación y eliminación (o actualización) de datos no válidos de los sistemas de origen. El proceso ETL, utilizando el área de stage, se puede utilizar para implementar la lógica de negocio que permita identificar y manejar los datos "no válidos". Los datos no válidos se identifican a menudo mediante una combinación de reglas de negocio y ciertas limitaciones técnicas, las cuales, se pueden integrar en la estructura del área de stage (como por ejemplo, restricciones de tabla en una base de datos relacional) para hacer cumplir las reglas de validez de los datos.[2]

Cálculo de agregados editar

El pre-cálculo de valores agregados, otros tipos de cálculos y la aplicación de una lógica de negocio compleja puede hacerse en un área de stage para dar soporte a acuerdos de nivel de servicio altamente sensibles (o SLA, service-level agreement) o para la presentación de informes de resumen en los sistemas de destino.[3]

Archivo de datos y resolución de problemas editar

Un área de stage da soporte y permite realizar el archivo de datos. En este escenario esta zona se puede utilizar para mantener los registros históricos durante el proceso de carga, o se puede utilizar para enviar datos a una estructura de archivos de destino. Además los datos pueden conservarse durante largos periodos de tiempo para permitir resolver los problemas técnicos que puedan surgir en las operaciones ETL.[3]

Véase también editar

Referencias editar

  1. Oracle 9i Data Warehousing Guide, Data Warehousing Concepts, Oracle Corp.
  2. a b c d e Data Warehousing Fundamentals: A Comprehensive Guide for IT Professionals, p. 137-138, Paulraj Ponniah, 2001.
  3. a b c BI Experts: Big Data and Your Data Warehouse's Data Staging Area, The Data Warehousing Institute, Phillip Russom, 2012.
  4. Is Data Staging Relational? Archivado el 26 de diciembre de 2013 en Wayback Machine., Ralph Kimball, 1998.
  5. Master Data Management in Practice: Achieving True Customer MDM, Dalton Cervo and Mark Allen, 2011.

Enlaces externos editar