Descripción de los patrones de integración de datos
Microsoft Azure proporciona una variedad de servicios de plataforma de datos que le permiten realizar diferentes tipos de análisis. Si se trata de una solución de análisis descriptivo en un almacenamiento de datos, a través de análisis predictivos dentro de HDInsight, Azure Databricks o Machine Learning Services. Existe la necesidad de que un servicio trate con el aspecto importante de la integración de datos.
En primer lugar, la integración de datos implica la recopilación de datos de uno o varios orígenes. De manera opcional, normalmente incluye un proceso en el que los datos se pueden limpiar y transformar, o quizás aumentar con datos adicionales y estar preparados. Por último, los datos fusionados se almacenan en un servicio de plataforma de datos que controla el tipo de análisis que desea realizar. Este proceso se puede automatizar mediante Azure Data Factory en un patrón conocido como extracción, transformación y carga (ETL).
Extracción
Durante el proceso de extracción, los ingenieros de datos definen los datos y su origen:
Definición del origen de datos: se identifican detalles del origen, por ejemplo, el grupo de recursos, la suscripción e información de identidad como una clave o un secreto.
Definición de los datos: se identifican los datos que se van a extraer. Para definir los datos se usa una consulta de la base de datos, un conjunto de archivos o un nombre de Azure Blob Storage para almacenamiento de blobs.
Transformación
- Definición de la transformación de datos: se definen las operaciones de transformación de datos, como división, combinación, derivación, suma, eliminación o dinamización de columnas. Se asignan campos entre el origen y el destino de los datos. También es posible que haya que agregar o combinar los datos.
Carga
Definición del destino: durante una carga, muchos de los destinos de Azure pueden aceptar datos en los formatos de notación de objetos JavaScript (JSON), archivo o blob. También podría ser necesario escribir código para interactuar con las API de la aplicación.
Azure Data Factory ofrece compatibilidad integrada con Azure Functions. También encontrará compatibilidad con numerosos lenguajes de programación, incluidos Node.js, .NET, Python y Java. Si bien el lenguaje de marcado extensible (XML) era común en el pasado, la mayoría de los sistemas han migrado a JSON debido a su flexibilidad como tipo de datos semiestructurados.
Inicio del trabajo: se prueba el trabajo ETL en un entorno de desarrollo o prueba. Después, se migra a un entorno de producción para cargar el sistema de producción.
Supervisión del trabajo: las operaciones de ETL pueden implicar muchos procesos complejos. Si se configura un sistema de supervisión proactivo y reactivo, se puede obtener información cuando algo va mal. Es necesario configurar el registro de acuerdo con la tecnología que se va a usar.
Herramientas de ETL
Como ingeniero de datos, existen varias herramientas para la extracción, transformación y carga de datos. Azure Data Factory proporciona casi 100 conectores empresariales y recursos sólidos para que los usuarios de código y los basados en código puedan realizar sus necesidades de movimiento y transformación de datos.
Evolución desde ETL
Azure ha abierto el camino a las tecnologías que pueden controlar los datos no estructurados a escala ilimitada. Este cambio ha supuesto una evolución del paradigma de carga y transformación de datos de ETL a ELT (extracción, carga y transformación).
La ventaja de ELT es que se puede almacenar los datos en su formato original, ya sea JSON, XML, PDF o imágenes. En ELT, la estructura de los datos se define durante la fase de transformación, por lo que se puede usar los datos de origen en varios sistemas de nivel inferior.
En un proceso ELT, los datos se extraen y se cargan en su formato nativo. Este cambio reduce el tiempo necesario para cargar los datos en un sistema de destino. Esto también limita la contención de recursos en los orígenes de datos.
Los pasos para el proceso ETL son los mismos que para el proceso ETL. Simplemente siguen un orden diferente.
Un proceso similar a ELT es el denominado ELTL (extracción, carga, transformación y carga). La diferencia de ELTL es que tiene una carga final en un sistema de destino.
Hay dos tipos comunes de patrones de integración de datos que se pueden admitir en Azure Data Factory.
Cargas de trabajo de almacenamiento de datos moderno:
un almacenamiento de datos moderno es un almacén de datos centralizado que proporciona análisis descriptivo y servicios de ayuda para la toma de decisiones en toda la empresa mediante orígenes de datos estructurados, no estructurados o de streaming. Los datos fluyen en el almacenamiento procedentes de varios sistemas transaccionales, bases de datos relacionales y otros orígenes de datos de forma periódica. Los datos almacenados se usan para la realización de informes históricos y de análisis de tendencias. El almacenamiento de datos actúa como repositorio central de muchas áreas temáticas y es el único origen de los datos.
Azure Data Factory se usa normalmente para automatizar el proceso de extracción, transformación y carga de datos a través de un proceso por lotes en orígenes de datos estructurados y no estructurados.
Cargas de trabajo analíticas avanzadas
Se pueden realizar análisis avanzados en forma de análisis predictivos o preferentes mediante un rango de servicios de la plataforma de datos de Azure. Azure Data Factory proporciona la integración de los sistemas de origen en un almacén de lago de datos y puede iniciar recursos de proceso como Azure Databricks o HDInsight para usar los datos para realizar el trabajo analítico avanzado.