Transformación de Datos
¿Qué es la transformación de datos?
La transformación de datos es el proceso de convertir datos o información de un formato a otro, usualmente desde el formato de un sistema fuente hasta el formato requerido de un nuevo sistema de destino.
El proceso usual implica sólo convertir documentos, pero las conversiones de datos a veces implican la conversión de un programa de un lenguaje de computadora a otro para permitir que el programa funcione en una plataforma diferente. La razón habitual de esta migración de datos es la adopción de un nuevo sistema totalmente diferente del anterior.
En la práctica real, la transformación de datos implica el uso de un programa especial que es capaz de leer el lenguaje base original de los datos, determinar el idioma en el que los datos que se deben traducir para que sea utilizable por el nuevo programa o sistema y luego procede a Transformar esos datos.
La transformación de datos implica dos fases clave:
Mapeo de datos: La asignación de elementos de la base o sistema de origen hacia el destino para capturar todas las transformaciones que se producen. Esto se hace más complicado cuando hay transformaciones complejas como muchas a una o reglas una a muchas para la transformación.
Generación de código: La creación del programa de transformación real. La especificación del mapa de datos resultante se utiliza para crear un programa ejecutable para ejecutar en sistemas informáticos.
Lenguajes de transformación comúnmente utilizados:
- Perl: un lenguaje de procedimiento y orientado a objetos de alto nivel capaz de operaciones poderosas
AWK: Uno de los idiomas más antiguos y un popular lenguaje de transformación TXT - XSLT: Un lenguaje de transformación de datos XML
- TXL: Un lenguaje de prototipado utilizado principalmente para la transformación de código fuente
- Lenguajes y Procesadores de Plantillas: Estos se especializan en la transformación de datos a documentos
Proceso de Transformación de Datos
La transformación de datos es el proceso de convertir datos de un formato o estructura a otro formato o estructura. La transformación de datos es crítica para actividades como la integración de datos y la gestión de datos.
La transformación de datos puede incluir una gama de actividades, puede convertir tipos de datos, limpiar datos eliminando datos nulos o duplicar datos, así como enriquecer los datos o realizar agregaciones, según las necesidades de tu proyecto. Generalmente el proceso de transformación de datos involucra dos etapas.
En la primera etapa se realiza el descubrimiento de datos donde se identifican las fuentes y los tipos de datos. Luego se determina la estructura y las transformaciones de datos que deben ocurrir. Posteriormente se realiza la asignación de datos para definir cómo se asignan, modifican, unen, filtran y agregan los campos individuales.
En la segunda etapa, se extraen los datos de la fuente original. El rango de fuentes puede variar, incluidas las fuentes estructuradas, como las bases de datos o las fuentes de transmisión, como la telemetría desde los dispositivos conectados o los archivos de registro de los clientes que utilizan sus aplicaciones web. Seguidamente se realizan las transformaciones.
Es decir, se transforman los datos, como agregar datos de ventas o convertir formatos de fecha, editar cadenas de texto o unir filas y columnas. Finalmente se envían los datos a la tienda de destino. El objetivo podría ser una base de datos o un almacén de datos que maneje datos estructurados y no estructurados.
Por qué transformar los datos
Es posible que desees transformar tus datos por varias razones. En general, las empresas desean transformar los datos para hacerlos compatibles con otros datos, moverlos a otro sistema, unirlos con otros datos o agregar información en los datos ya almacenados.
Por ejemplo, consideremos el siguiente escenario: tu compañía ha comprado una compañía más pequeña y necesita combinar información para los departamentos de Recursos Humanos. La empresa comprada utiliza una base de datos diferente a la compañía matriz, por lo que deberemos realizar algunos trabajos para asegurarnos de que estos registros coincidan.
Cada uno de los nuevos empleados ha recibido una identificación de empleado, por lo que puede servir como una clave. Sin embargo, deberemos cambiar el formato de las fechas, tendremos que eliminar cualquier fila duplicada y asegurarnos de que no hayan valores nulos para el campo ID de empleado para que todos los trabajadores se tengan en cuenta. Todas estas funciones críticas se realizan en un área de preparación antes de cargar los datos en el destino final.
Otras razones comunes para transformar datos incluyen:
Si Estás moviendo tus datos a un nuevo almacén de datos; por ejemplo, si te muda a un almacén de datos en la nube y necesitas cambiar los tipos de datos.
Si deseas unir datos no estructurados o datos de transmisión con datos estructurados para poder analizar los datos juntos.
Si deseas agregar información a tus datos para enriquecerlos, como realizar búsquedas, agregar datos de geolocalización o agregar marcas de tiempo.
Si desea realizar agregaciones, como comparar datos de ventas de diferentes regiones o sumar ventas de diferentes regiones.
Cómo transformar los datos
Existen un par de formas diferentes de transformar los datos:
Scripting
Algunas compañías realizan la transformación de datos a través de scripts que usan SQL o Python para escribir el código para extraer y transformar los datos.
Herramientas de ETL en el disco local
Las herramientas ETL (Extraer, Transformar, Cargar) pueden eliminar gran parte de la molestia de crear scripting al momento de querer automatizar el proceso. Estas herramientas suelen estar alojadas en el servidor de tu empresa y pueden requerir una amplia experiencia y costos de infraestructura.
Herramientas ETL basadas en la nube
Estas herramientas ETL están alojadas en la nube, donde puedes aprovechar la experiencia y la infraestructura del proveedor.
Mejores Prácticas de Transformación de Datos
Estas son las mejores prácticas de transformación de datos:
Diseña el objetivo
Cuando nos enfrentamos a un océano de datos para procesar, es tentador saltar directamente a las tuercas y los pernos de la transformación de datos.
Sin embargo, antes de transformar los datos en información, debemos involucrar a los usuarios de negocios para comprender los procesos de negocios que estamos tratando de analizar y diseñar el formato de destino.
Mejora tus datos con perfiles de otros datos
Conocer el proceso de negocio que deseas analizar generalmente apunta a la fuente de datos que se transformará.
Por ejemplo, para analizar las tendencias de ventas, debes acceder a la base de datos de clientes, a la base de datos de productos y luego extraer los resultados de ventas desde un sistema de punto de venta.
Una vez que se conoce la fuente de datos, puedes extraer los datos sin procesar en un formato utilizable.
Limpia tus datos
Equipado con los conocimientos de los perfiles de datos, puedes comprender mejor cuánto y qué tipo de trabajo de transformación de datos necesitas hacer con los datos para poder utilizarlos.
Por ejemplo, si los campos de fecha de los datos de origen están en el formato AAAA / MM / DD, y tus campos de fecha de destino están en el formato MM-DD-AAAA, tendrás que transformar los campos de fecha de origen para que coincidan con el formato de destino.
O, si algunas columnas muestran una gran frecuencia de valores faltantes o datos no deseados, es posible que debas conversar con las partes interesadas del negocio para determinar si se debe estimar valores para los datos faltantes o excluir estos registros.
Construir dimensiones y luego hechos
Como mencionamos anteriormente, las dimensiones ponen contexto alrededor de los datos; Los hechos explican lo que sucedió dentro del contexto dimensional.
Por ejemplo, los clientes, los productos y las fechas podrían ser dimensiones y los resultados de ventas y las medidas podrían ser hechos.
Auditoría y Calidad de Datos
El seguimiento de las métricas de auditoría y calidad de los datos durante el proceso de transformación de los datos proporciona grandes beneficios.
El seguimiento de auditoría captura la cantidad de registros cargados en cada paso del proceso de transformación y el momento en que se produjeron esos pasos.
Otros elementos del procesamiento de datos
- Entrada de datos
- Captura de datos
- Tipos de datos
- La depuración de los datos
- Integridad de los datos
- Codificación (cifrado) de datos
- Transformación de datos
- Traducción de datos
- Resúmenes de datos
- Agregación de datos
- Validación de datos
- Modelado de datos
- El análisis de datos
- El análisis de datos estadístico
- Visualización de datos
- Almacenamiento de datos
- Minería de datos
- Interpretación de datos