Arquitectura de análisis moderno con Azure Databricks

Azure Data Factory
Azure Data Lake Storage
Azure Databricks
Azure Synapse Analytics
Power BI

Ideas de solución

Este artículo es una idea de solución. Si te gustaría que ampliemos este artículo con más información, como posibles casos de uso, servicios alternativos, consideraciones de implementación o una guía de precios, comunícalo a través de los Comentarios de GitHub.

Esta solución describe una arquitectura de datos moderna. Azure Databricks constituye el núcleo de la solución. Esta plataforma funciona perfectamente con otros servicios, como Azure Data Lake Storage Gen2, Azure Data Factory, Azure Synapse Analytics y Power BI.

Apache® y Apache Spark™ son marcas comerciales registradas o marcas comerciales de Apache Software Foundation en los Estados Unidos y otros países. El uso de estas marcas no implica la aprobación de Apache Software Foundation.

Architecture

Architecture diagram showing how a modern data architecture collects, processes, analyzes, and visualizes data.

Descargue un archivo Visio de esta arquitectura.

Flujo de datos

  1. Azure Databricks ingiere datos de streaming sin procesar de Azure Event Hubs.

  2. Data Factory carga datos por lotes sin procesar en Data Lake Storage Gen2.

  3. Para el almacenamiento de datos:

    • Data Lake Storage Gen2 aloja datos de todo tipo: estructurados, no estructurados y semiestructurados. También almacena datos por lotes y de streaming.

    • Delta Lake constituye la capa mantenida del lago de datos. Almacena los datos refinados en un formato de código abierto.

    • Azure Databricks funciona bien con una arquitectura en medallón que organiza los datos en capas:

      • Bronce: contiene datos sin procesar.
      • Plata: contiene datos limpios y filtrados.
      • Oro: almacena datos agregados que son útiles para el análisis empresarial.
  4. La plataforma analítica ingiere datos de los distintos orígenes de procesamiento por lotes y streaming. Los científicos de datos usan estos datos para varias tareas:

    • Preparación de datos
    • Exploración de datos
    • Preparación de modelos
    • Entrenamiento de modelos

    MLflow administra el seguimiento de parámetros, métricas y modelos en ejecuciones de código de ciencia de datos. Las posibilidades de codificación son flexibles:

    • El código puede estar en SQL, Python, R y Scala.
    • El código puede usar bibliotecas y marcos de código abierto conocidos, como Koalas, Pandas y scikit-learn, que están preinstalados y optimizados.
    • Los profesionales pueden optimizar el rendimiento y el costo con opciones de proceso de nodo único y de varios nodos.
  5. Los modelos de Machine Learning están disponibles en varios formatos:

    • Azure Databricks almacena información sobre los modelos en el registro de modelos de MLflow. El registro hace que los modelos estén disponibles mediante las API REST, el procesamiento por lotes y streaming.
    • La solución también puede implementar modelos en servicios web de Azure Machine Learning o Azure Kubernetes Service (AKS).
  6. Los servicios que funcionan con los datos se conectan a un único origen de datos subyacente para garantizar la coherencia. Por ejemplo, los usuarios pueden ejecutar consultas SQL en el lago de datos con SQL Analytics de Azure Databricks. Este servicio:

  7. Power BI genera informes y paneles analíticos e históricos a partir de la plataforma de datos unificada. Este servicio usa estas características para trabajar con Azure Databricks:

    • Un conector de Azure Databricks integrado para visualizar los datos subyacentes.
    • Controladores Java Database Connectivity (JDBC) y de conectividad abierta de bases de datos (ODBC) optimizados.
  8. Los usuarios pueden exportar conjuntos de datos oro fuera del lago de datos en Azure Synapse a través del conector de Synapse optimizado. Los grupos de SQL de Azure Synapse proporcionan un entorno de proceso y almacenamiento de datos.

  9. La solución usa los servicios de Azure para las tareas de colaboración y para mejorar el rendimiento, la confiabilidad, la gobernanza y la seguridad:

    • Microsoft Purview proporciona servicios de detección de datos, clasificación de datos confidenciales e información de gobernanza para todo el patrimonio de datos.

    • Azure DevOps ofrece integración continua e implementación continua (CI/CD) y otras características de control de versiones integradas.

    • Azure Key Vault administra de forma segura secretos, claves y certificados.

    • Microsoft Entra ID proporciona el inicio de sesión único (SSO) para los usuarios de Azure Databricks. Azure Databricks admite el aprovisionamiento automatizado de usuarios con Microsoft Entra ID para estas tareas:

      • Creación de usuarios
      • Asignación de un nivel de acceso a cada usuario
      • Eliminación de usuarios y denegación de su acceso
    • Azure Monitor recopila y analiza la telemetría de recursos de Azure. Mediante la identificación proactiva de problemas, este servicio maximiza el rendimiento y la confiabilidad.

    • Azure Cost Management and Billing proporciona servicios de gobernanza financiera para cargas de trabajo de Azure.

Componentes

La solución usa los componentes siguientes.

Componentes principales

  • Azure Databricks es una plataforma de análisis de datos. Sus clústeres de Spark totalmente administrados procesan grandes flujos de datos de varios orígenes. Azure Databricks limpia y transforma los conjuntos de datos sin estructura. Combina los datos procesados con datos estructurados de bases de datos operativas o almacenes de datos. Azure Databricks también entrena e implementa modelos escalables de aprendizaje automático y aprendizaje profundo.

  • Event Hubs es una plataforma de streaming de macrodatos. Como plataforma como servicio (PaaS), este servicio de ingesta de eventos está totalmente administrado.

  • Data Factory es un servicio de integración de datos híbrido. Puede usar esta solución sin servidor y totalmente administrada para crear, programar y orquestar los flujos de trabajo de transformación de datos.

  • Data Lake Storage Gen2 es un lago de datos seguro y escalable para cargas de trabajo de análisis de alto rendimiento. Este servicio puede administrar varios petabytes de información, al mismo tiempo que mantiene un rendimiento de cientos de gigabits. Los datos pueden ser estructurados, semiestructurados o no estructurados. Normalmente, proceden de varios orígenes heterogéneos, como registros, archivos y medios.

  • SQL Analytics de Azure Databricks ejecuta consultas en lagos de datos. Este servicio también permite visualizar los datos en paneles.

  • Machine Learning es un entorno basado en la nube que le ayuda a crear, implementar y administrar soluciones de análisis predictivo. Con estos modelos, puede predecir comportamientos, resultados y tendencias.

  • AKS es un servicio de Kubernetes totalmente administrado, de alta disponibilidad y seguro. AKS facilita la implementación y la administración de aplicaciones contenedorizadas.

  • Azure Synapse Analytics es un servicio de análisis para almacenes de datos y sistemas de macrodatos. Este servicio se integra con Power BI, Machine Learning y otros servicios de Azure.

  • Los conectores de Azure Synapse proporcionan una manera de acceder a Azure Synapse desde Azure Databricks. Estos conectores transfieren eficazmente grandes volúmenes de datos entre clústeres de Azure Databricks e instancias de Azure Synapse.

  • Los grupos de SQL proporcionan almacenamiento de datos y un entorno de proceso en Azure Synapse. Los grupos son compatibles con Azure Storage y Data Lake Storage Gen2.

  • Delta Lake es una capa de almacenamiento que usa un formato de archivo abierto. Esta capa se ejecuta sobre el almacenamiento en la nube, como Data Lake Storage Gen2. Delta Lake admite el control de versiones, la reversión y las transacciones de datos para actualizar, eliminar y combinar datos.

  • MLflow es una plataforma de código abierto para el ciclo de vida del aprendizaje automático. Sus componentes supervisan los modelos de aprendizaje automático durante el entrenamiento y la ejecución. MLflow también almacena modelos y los carga en producción.

Componentes de informes y gobernanza

  • Power BI es una colección de servicios y aplicaciones de software. Estos servicios crean y comparten informes que conectan y visualizan orígenes de datos no relacionados. Junto con Azure Databricks, Power BI puede proporcionar la determinación de la causa principal y el análisis de datos sin procesar.

  • Microsoft Purview administra datos locales, de varias nubes y de software como servicio (SaaS). Este servicio de gobernanza mantiene mapas panorámicos de los datos. Entre las características se incluyen la detección automatizada de datos, la clasificación de datos confidenciales y el linaje de datos.

  • Azure DevOps es una plataforma de orquestación de DevOps. Este SaaS proporciona herramientas y entornos para compilar, implementar y colaborar en aplicaciones.

  • Azure Key Vault almacena y controla el acceso a secretos como tokens, contraseñas y claves de API. Key Vault también crea y controla claves de cifrado y administra certificados de seguridad.

  • Microsoft Entra ID ofrece un servicio de administración de identidades y accesos basado en la nube. Estas características proporcionan a los usuarios una manera de iniciar sesión y acceder a los recursos.

  • Azure Monitor recopila y analiza los datos de entornos y recursos de Azure. Estos datos incluyen la telemetría de aplicaciones, como métricas de rendimiento y registros de actividad.

  • Azure Cost Management and Billing administra el gasto en la nube. Mediante presupuestos y recomendaciones, este servicio organiza los gastos y muestra cómo reducir los costos.

Detalles del escenario

Las arquitecturas de datos modernas cumplen estos criterios:

  • Unifican las cargas de trabajo de datos, análisis e inteligencia artificial.
  • Funcionan de manera eficaz y confiable a cualquier escala.
  • Proporcionan información detallada a través de paneles de análisis, informes operativos o análisis avanzados.

Esta solución describe una arquitectura de datos moderna que logra estos objetivos. Azure Databricks constituye el núcleo de la solución. Esta plataforma funciona perfectamente con otros servicios. Juntos, estos servicios proporcionan una solución con estas calidades:

  • Simple: el análisis unificado, la ciencia de datos y el aprendizaje automático simplifican la arquitectura de datos.
  • Abierta: la solución admite código fuente abierto, estándares abiertos y marcos abiertos. También funciona con entornos de desarrollo integrado (IDE), bibliotecas y lenguajes de programación conocidos. Mediante conectores y API nativos, la solución también funciona con una amplia gama de otros servicios.
  • Colaboración: ingenieros de datos, científicos de datos y analistas trabajan juntos con esta solución. Pueden usar cuadernos de colaboración, IDE, paneles y otras herramientas para acceder a los datos subyacentes comunes y analizarlos.

Posibles casos de uso

Esta solución está inspirada en el sistema que creó Swiss Re Group para su división Property & Casualty Reinsurance. Además del sector de los seguros, cualquier área que funcione con macrodatos o aprendizaje automático también puede beneficiarse de esta solución. Algunos ejemplos son:

  • El sector energético
  • Comercio electrónico y venta al por menor
  • Banca y finanzas
  • Medicina y salud

Pasos siguientes

Para conocer soluciones relacionadas, consulte esta información: