Tabla de contenidos
Los procesos de extracción, transformación y carga de datos (ETL) son una parte de la integración de datos, pero es un elemento importante cuya función completa el resultado de todo el desarrollo de la cohesión de aplicaciones y sistemas.
La palabra ETL corresponde a las siglas en inglés de:
- Extraer: extract.
- Transformar: transform.
- Cargar: load.
Con ello, se puede decir que todo proceso ETL consta precisamente de estas tres fases: extracción, transformación y carga. A continuación, se define en qué consiste cada una de ellas.
Fase extracción
Para realizar de manera correcta el proceso de extracción se deben seguir los siguientes pasos:
- Extraer los datos desde los sistemas de origen.
- Analizar los datos extraídos obteniendo un chequeo.
- Interpretar este chequeo para verificar que los datos extraídos cumplen la pauta o estructura que se esperaba. Si no fuese así, los datos deberían ser rechazados.
- Convertir los datos a un formato preparado para iniciar el proceso de transformación.
Además, una de las prevenciones más importantes a tomar en cuenta durante el proceso de extracción, sería el exigir siempre que esta tarea cause un impacto mínimo en el sistema de origen. Este requisito se basa en la práctica, ya que si los datos a extraer son muchos, el sistema de origen se podría ralentizar e incluso colapsar, provocando que no pudiera volver a ser utilizado con normalidad para su uso cotidiano.
Fase de transformación
La fase de transformación de un proceso de ETL aplica una serie de reglas de negocio o funciones sobre los datos extraídos para convertirlos en datos que serán cargados. Estas directrices pueden ser declarativas, basarse en excepciones o restricciones, pero para potenciar su pragmatismo y eficacia, es preciso asegurarse de que sean:
- Declarativas.
- Independientes.
- Claras.
- Inteligibles.
- Con una finalidad útil para el negocio.
Proceso de carga
En esta etapa, los datos procedentes de la fase anterior (fase de transformación) son cargados en el sistema de destino. Dependiendo de los requerimientos de la organización, este proceso puede abarcar una amplia variedad de acciones diferentes.
Existen dos formas básicas de desarrollar el proceso de carga:
Acumulación simple
Esta manera de cargar los datos consiste en realizar un resumen de todas las transacciones comprendidas en el periodo seleccionado y transportar el resultado como una única transacción hacia el data warehouse, almacenando un valor calculado que consistirá típicamente en un sumatorio o un promedio de la magnitud considerada. Es la forma más sencilla y común de llevar a cabo el proceso de carga.
Rolling
Este proceso sería el recomendable en los casos donde se busque mantener varios niveles de granularidad. Para ello, se almacena información resumida a distintos niveles, correspondiendo a distintas agrupaciones de la unidad de tiempo o diferentes niveles jerárquicos en alguna o varias de las dimensiones de la magnitud almacenada (por ejemplo, totales diarios, totales semanales, totales mensuales, etcétera).
Cualquiera que sea la manera de desarrollar este proceso, hay que tener en cuenta que esta fase interactúa directamente con la base de datos de destino, y por eso al realizar esta operación se aplicarán todas las restricciones que se hayan definido en esta. Si están bien definidas, la calidad de los datos en el proceso ETL estará garantizada.
División Consultoría de EvaluandoSoftware.com