Ideas de solución
En este artículo se describe una idea de solución. El arquitecto de la nube puede usar esta guía para ayudar a visualizar los componentes principales de una implementación típica de esta arquitectura. Use este artículo como punto de partida para diseñar una solución bien diseñada que se adapte a los requisitos específicos de la carga de trabajo.
Esta solución describe la 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, Microsoft Fabric 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
Descargue un archivo Visio de esta arquitectura.
Flujo de datos
Azure Databricks ingiere datos de streaming sin procesar de Azure Event Hubs mediante Delta Live Tables.
Fabric Data Factory carga datos por lotes sin procesar en Data Lake Storage Gen2.
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.
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.
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).
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 Azure Databricks SQL Warehouse. Este servicio:
- Proporciona un editor de consultas y un catálogo, el historial de consultas, el conjunto de paneles básico y alertas.
- Usa la seguridad integrada que incluye permisos de nivel de columna y nivel de fila.
- Usa un motor Delta con tecnología Photon para acelerar el rendimiento.
Los usuarios pueden reflejar los conjuntos de datos dorados del catálogo de Unity de Databricks en Fabric. creación de reflejo de Databricks en Fabric permiten a los usuarios integrar fácilmente sin movimiento de datos ni replicación de datos.
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.
- Con la creación de reflejo de Databricks en Fabric, puede aprovechar Direct Lake para cargar los modelos semánticos de PBI para consultas de mayor rendimiento.
La solución usa el catálogo de Unity y los servicios de Azure para la colaboración, el rendimiento, la confiabilidad, la gobernanza y la seguridad:
Databricks Unity Catalog proporciona funcionalidades centralizadas de control de acceso, auditoría, linaje y detección de datos en áreas de trabajo de Azure Databricks.
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.
El aprovisionamiento de Microsoft Entra ID y SCIM proporciona el inicio de sesión único (SSO) para usuarios y grupos de Azure Databricks. Azure Databricks admite el aprovisionamiento automatizado de usuarios con Microsoft Entra ID para estas tareas:
- Crear nuevos usuarios y grupos.
- 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.
Microsoft Cost Management 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 que usa clústeres de Spark para procesar flujos de datos grandes. Limpia y transforma datos no estructurados, los combina con datos estructurados y puede entrenar e implementar modelos de aprendizaje automático. En esta arquitectura, Databricks actúa como herramienta central para la ingesta, procesamiento y servicio de datos, lo que proporciona un entorno unificado para administrar todo el ciclo de vida de los datos.
azure Databricks SQL Warehouse son recursos de proceso que permiten consultar y explorar datos en Databricks. En esta arquitectura, puede aprovechar los puntos de conexión de SQL para conectarse directamente a los datos de Power BI.
Azure Databricks Delta Live Tables es un marco declarativo para crear canalizaciones de procesamiento de datos confiables, fáciles de mantener y probar. En esta arquitectura, Delta Live Tables le ayuda a definir transformaciones para realizar en los datos y administrar la orquestación de tareas, la administración de clústeres, la supervisión, la calidad de los datos y el control de errores en Databricks.
Microsoft Fabric es una plataforma de análisis y datos de un extremo a otro diseñada para empresas que necesitan una solución unificada. La plataforma ofrece servicios como Ingeniería de datos, Data Factory, Ciencia de datos, Real-Time Analytics, Almacenamiento de datos y Bases de datos. En esta arquitectura, se reflejan las tablas del catálogo de Unity en Fabric y se usa Direct Lake en Power BI para mejorar el rendimiento.
Data Factory en Microsoft Fabric le permite disfrutar de una experiencia de integración de datos moderna para ingerir, preparar y transformar datos de un amplio conjunto de orígenes de datos en Fabric. En esta arquitectura, estamos aprovechando conectores integrados en varios orígenes de datos para la ingesta rápida en ADLS o OneLake, donde Databricks recuperará y transformará aún más los datos por lotes.
event Hubs es una plataforma de streaming de macrodatos totalmente administrada. Como plataforma como servicio (PaaS), proporciona funcionalidades de ingesta de eventos. En esta arquitectura, Event Hubs se usa para los datos de streaming, a los que Databricks puede conectarse y procesar mediante Spark Streaming o Delta Live Tables.
data Lake Storage Gen2 es un lago de datos escalable y seguro para el análisis de alto rendimiento. Controla varios petabytes de datos y admite cientos de gigabits de rendimiento. ADLS puede almacenar datos estructurados, semiestructurados y no estructurados. En esta arquitectura, usamos ADLS para almacenar datos por lotes y de streaming.
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. En esta arquitectura, AML puede aprovechar los datos transformados por Databricks para entrenar e inferir modelos.
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. En esta arquitectura, AKS se aprovecha para hospedar modelos de aprendizaje automático en un entorno en contenedor para la inferencia escalable.
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. En esta arquitectura, Delta funciona como el formato de archivo principal para escribir y leer datos de ADLS.
MLflow es una plataforma de código abierto para administrar el ciclo de vida del aprendizaje automático. Sus componentes supervisan los modelos de aprendizaje automático durante el entrenamiento y la ejecución. En esta arquitectura, similar a AML, puede aprovechar MLflow en Databricks para administrar el ciclo de vida de APRENDIZAJE automático, incluido el entrenamiento y la inferencia mediante los datos del catálogo de Unity que acaba de transformar en Databricks.
Componentes de informes y gobernanza
databricks Unity Catalog proporciona funcionalidades centralizadas de control de acceso, auditoría, linaje y detección de datos en áreas de trabajo de Azure Databricks. En esta arquitectura, Unity Catalog funciona como la herramienta principal de Databricks para administrar y proteger el acceso a los datos.
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. En esta arquitectura, Power BI se usa para crear paneles e informes que proporcionan información sobre los datos procesados por Databricks y Fabric.
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. En esta arquitectura, Purview se usa para examinar y realizar un seguimiento de los datos ingeridos en el catálogo de Unity, Fabric, Power BI y ADLS.
Azure DevOps es una plataforma de orquestación de DevOps. Este SaaS proporciona herramientas y entornos para compilar, implementar y colaborar en aplicaciones. En esta arquitectura, Azure DevOps se usa para automatizar la implementación de la infraestructura de Azure. Además, podría aprovechar GitHub para la automatización y el control de versiones del código de Databricks, para mejorar la colaboración, el seguimiento de los cambios y la integración con canalizaciones de CI/CD.
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. En este architecure, AKV se usa para almacenar claves SAS de ADLS. Estas claves se usan en Databricks y otros servicios para la autenticación.
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. En este architecure, Entra Id se usa para autenticar y autorizar usuarios y servicios en Azure.
SCIM permite configurar el aprovisionamiento en la cuenta de Azure Databricks mediante el identificador de Microsoft Entra. En esta arquitectura, se usa para administrar usuarios que acceden a áreas de trabajo de Databricks.
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. En esta arquitectura, Azure Monitor se usa para supervisar el estado de los recursos de proceso en Databricks y Azure Machine Learning, así como para otros componentes que envían registros a Azure Monitor.
Microsoft Cost Management administra el gasto en la nube. Mediante presupuestos y recomendaciones, este servicio organiza los gastos y muestra cómo reducir los costos. En esta arquitectura, Microsoft Cost Management se usa para supervisar y controlar el costo de toda la solución.
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
- Tutorial de : Creación de una canalización de datos de un extremo a otro en Databricks
- Tutorial de : Ejecución del primer delta Live Tables
Recursos relacionados
Para conocer soluciones relacionadas, consulte esta información:
Guías de arquitectura relacionadas
- Supervisión de Azure Databricks con Azure Monitor
- Comparación de los productos de aprendizaje automático de Microsoft
- Elección de una tecnología de procesamiento de lenguaje natural
- Selección de una tecnología de procesamiento de flujos