Productos de análisis de datos a escala de la nube en Azure
Los productos de datos son datos servidos como producto y calculados, guardados y servidos por servicios de persistencia políglota, que pueden ser requeridos por determinados casos de uso. El proceso de creación y servicio de un producto de datos puede requerir servicios y tecnologías que no se incluyen en los servicios principales de la zona de aterrizaje de datos. Un ejemplo de esto sería informar con requisitos de nicho, como el cumplimiento y los informes fiscales.
Consideraciones de diseño
Una zona de aterrizaje de datos puede recibir múltiples productos de datos creados mediante la ingesta de datos desde la misma zona de aterrizaje de datos o desde múltiples zonas de aterrizaje de datos. Esto se muestra en el diagrama siguiente.
En el ejemplo anterior se muestra lo siguiente:
- Consumo de datos dentro de la zona:
- El producto de datos B consume datos del producto de datos A y otros datos o productos de datos existentes en el lago de datos dentro de su propia zona de aterrizaje.
- Los productos de datos C y D solo consumen datos desde sus propias zonas de aterrizaje de datos respectivas.
- Consumo de datos entre zonas:
- El producto de datos B también consume datos del producto de datos C y los datos del lago de datos de la zona de aterrizaje 3.
Importante
En el caso del consumo de datos entre zonas, puesto que el producto de datos B lee de la zona de aterrizaje de datos 3, se requeriría la aprobación del equipo de operaciones de zona de aterrizaje de datos y operaciones de integración de la zona de aterrizaje de datos 3.
Importante
El producto de datos B consume datos de los productos de datos A y C. Antes de que esto pueda ocurrir, el producto de datos B debe registrar su consumo de productos de datos a través de contratos de uso compartido de datos. Este contrato de uso compartido de datos debe actualizar el linaje del producto de datos A al producto de datos B y del producto de datos C al producto de datos B.
El grupo de recursos de un producto de datos incluye todos los servicios necesarios para crearlo y mantenerlo. Podemos llamar a este grupo de recursos una aplicación de datos. Entre los ejemplos de servicios que podrían formar parte de una aplicación de datos se incluyen Azure Functions, Azure App Service, Logic Apps, Azure Analysis Services, Azure Cognitive Services, Azure Machine Learning, Azure SQL Database, Azure Database for MySQL y Azure Cosmos DB. Para obtener más información, consulte los ejemplos de aplicaciones de datos.
Los productos de datos tienen datos de orígenes de datos READ que han aplicado algunas transformaciones de datos. Por ejemplo, podría ser un nuevo conjunto de datos o un informe de BI.
Recomendaciones de diseño
Cree productos de datos dentro de la zona de aterrizaje de datos mediante la adhesión a principios de diseño que le permitan escalar con la gobernanza de datos. En las secciones siguientes se proporcionan recomendaciones de diseño que le ayudarán a planear su ecosistema de aplicaciones de datos.
Implementación de varios grupos de recursos
Cada aplicación de datos es un grupo de recursos. Dado que las aplicaciones de datos son servicios de computación, servicios de persistencia políglota, o ambos, sólo pueden ser necesarios en función de determinados casos de uso. Como tal, se consideran un componente opcional de la zona de aterrizaje de datos. En un caso en el que necesite aplicaciones de datos, cree varios grupos de recursos por aplicación de datos como se muestra en el diagrama siguiente.
Establecimiento de límites de protección
Azure Policy impulsa la configuración de servicios predeterminada dentro de una zona de aterrizaje de datos. Piense en el análisis operativo como varios grupos de recursos que su equipo del producto de datos puede solicitar de un catálogo de servicios estándar. Mediante Azure Policy, puede configurar el límite de seguridad y el conjunto de características necesario.
Importante
Para impulsar la coherencia, configure una Azure Policy para cada aplicación de datos.
Consumo de datos desde múltiples lugares
Las aplicaciones de datos administran, organizan y dan sentido a los datos de los recursos de datos y presentan la información obtenida. Un producto de datos es el resultado de los datos de una o varias aplicaciones de datos dentro de las zonas de aterrizaje de datos. Permita que las aplicaciones de datos accedan a los datos de varios orígenes y varios cuando sea necesario.
Escalado según las necesidades
Los servicios que componen aplicaciones de datos son implementaciones incrementales en la zona de aterrizaje de datos. Escale las aplicaciones de datos según sea necesario.
Habilitación de la detección de datos
Registre automáticamente los productos de datos en un catálogo de datos, como Azure Purview, para permitir el examen de datos.
Identificación de los productos de datos
Al empezar a planificar una zona de aterrizaje de datos, identifique tantos productos de datos (y las aplicaciones de datos que generan y mantengan) según sea necesario para ayudar a impulsar la arquitectura de la aplicación de producto de datos. La conformidad con la gobernanza de la plataforma implementada debe desempeñar el papel más importante en sus decisiones.
Céntrese en cómo las aplicaciones de datos son productores de datos y consumidores para otros usuarios. Por ejemplo, supongamos que ha identificado un conjunto de productos de datos (A, B, C y D) que se generan y consumen datos. Necesita productos de datos A y D como orígenes para los datos de la aplicación de datos B para el producto de datos B. El producto de datos B se crea a partir de los datos que la aplicación de datos B consume de los productos de datos A y D. La aplicación de datos B actúa como productor de datos y también genera datos para el producto de datos C.
Control del entorno de aplicación de datos con infraestructura como código
La gobernanza y la infraestructura como código deben controlar el entorno de la aplicación de datos en todo su ecosistema de productos de datos, como se muestra en el diagrama anterior.
Publicación de modelos de datos
Sus equipos de productos de datos deben publicar sus modelos de datos en un repositorio de modelado.
Establecimiento de expectativas de los usuarios del producto de datos
Actualice sus contratos de uso compartido de datos con contratos de nivel de servicio y certificaciones para sus productos de datos para transmitir expectativas precisas a los posibles usuarios del producto de datos.
Captura del linaje
Si el producto de datos B se crea a partir de datos procedentes de productos de datos A y D, el linaje debe capturarse de A y D a B. También se debe capturar un linaje adicional para el producto de datos C, ya que se crea con datos del producto de datos B. El linaje actualizado debe capturarse en una aplicación de linaje de datos antes de cada lanzamiento del producto de datos.
Nota
El uso de Azure Pipelines le permite crear de puertas de aprobación e invocar funciones que pueden garantizar que los metadatos, el linaje y los Acuerdos de Nivel de Servicio se registran en el servicio de gobernanza correcto.
Defina la arquitectura de la aplicación de datos
Debe crear una arquitectura detallada para cada producto de datos que defina completamente su relación con otros productos de datos, sus dependencias y sus requisitos de acceso.
Ejemplo de escenario de diseño
Para comprender el proceso de definición de la arquitectura, explore el siguiente ejemplo de una entidad financiera y su producto de datos de supervisión de crédito.
El producto de datos de seguimiento del crédito que se muestra en este diagrama consume datos de un almacén de datos de lectura que ha sido ingerido por el equipo de operaciones de integración. También genera productos de datos consumidos por otros dos productos de datos.
Nota
Un almacén u origen de datos de lectura también se conoce como un golden record source. Estos orígenes de datos se han limpiado, pero no se les ha aplicado ninguna transformación.
El equipo de productos de monitorización de créditos solicita acceso de lectura a los almacenes de datos que necesita para la creación de sus productos de datos. Sus solicitudes se enrutan hacia los propietarios de los datos para su aprobación. Una vez que reciben aprobación, el equipo del producto puede empezar a compilar su aplicación de datos.
Los datos del origen de datos de lectura se transforman en el(los) producto(s) de datos de supervisión de crédito. Los nuevos productos de datos se almacenan en la capa seleccionada del lago de datos. Estos nuevos productos de datos y el nuevo linaje de datos deben registrarse como parte del proceso de implementación de DevOps. Una función puede comprobar los metadatos registrados con la estructura física del recurso de datos. Debe registrar la dependencia en los recursos de datos del origen de datos de lectura y los productos de datos.
El equipo del producto de datos de aprobación de préstamos depende de algunos de los productos de datos de supervisión de crédito. El equipo de aprobación de préstamos podría solicitar el acceso de lectura a los productos de datos de control de crédito que necesitan para sus productos de datos. Una vez que publiquen su producto de datos de aprobación de préstamos y su aplicación de datos, todos los recursos de productos de datos, linaje y modelos deben registrarse en los servicios de gobernanza pertinentes.
Aplicaciones de datos de ejemplo
Las secciones siguientes contienen aplicaciones de datos de ejemplo para ilustrar aún más escenarios de aplicaciones de datos.
Aplicación de análisis de datos y ciencia de datos
Una aplicación para el análisis de datos y la ciencia de datos podría contener los servicios que se muestran en la aplicación de datos de ejemplo product-analytics-rg
.
Nota:
Puede utilizar la aplicación de datos anterior como plantilla. Esta plantilla implementa un conjunto de servicios que puede usar para el análisis de datos y la ciencia de datos. Puede utilizar esta plantilla de aplicación de productos de datos para crear rápidamente entornos para equipos multifuncionales. Debe deshabilitar explícitamente los servicios que no necesite.
La plantilla Analytics de productos de datos contiene todas las plantillas para implementar un producto de datos para análisis y ciencia de datos dentro de una zona de aterrizaje de datos del escenario de análisis a escala de la nube.
Los artefactos de código e implementación incluyen los siguientes servicios:
- Machine Learning
- Key Vault
- Application Insights
- Storage
- Container Registry
- Opciones de servicios cognitivos (opcional)
- Data Factory (selección entre Data Factory y Synapse)
- Área de trabajo de Synapse (seleccione entre Data Factory y Synapse)
- Búsqueda de Azure (opcional)
- grupo de SQL (opcional)
- Grupo de BigData (opcional)
Aplicación de datos por lotes
La plantilla Aplicación de datos por lotes contiene todas las plantillas para implementar un producto de datos para el procesamiento de datos por lotes dentro de una zona de aterrizaje de datos del escenario de análisis a escala de la nube.
Los artefactos de código e implementación incluyen los siguientes servicios:
- Key Vault
- Data Factory (selección entre Data Factory y Synapse)
- Azure Cosmos DB (opcional)
- Área de trabajo de Synapse (seleccione entre Data Factory y Synapse)
- Base de datos MySQL (opcional)
- Base de datos Azure SQL (opcional)
- Base de datos PostgreSQL (opcional)
- Base de datos MariaDB (opcional)
- grupo de SQL (opcional)
- Microsoft SQL Server (opcional)
- Grupo elástico SQL (opcional)
- Grupo de BigData
Aplicación de datos de streaming
La plantilla de aplicación de datos en flujo contiene todas las plantillas para desplegar un producto de datos para el procesamiento de datos en tiempo real dentro de una zona de aterrizaje de datos en un escenario de análisis a escala de la nube
Los artefactos de código e implementación incluyen los siguientes servicios:
- Key Vault
- Event Hubs
- IoT Hub
- Stream Analytics (opcional)
- Azure Cosmos DB (opcional)
- Área de trabajo de Synapse
- Base de datos Azure SQL (opcional)
- grupo de SQL (opcional)
- Microsoft SQL Server (opcional)
- Grupo elástico SQL (opcional)
- Grupo de BigData
- Data Explorer (opcional)
Para buscar los repositorios que contienen las plantillas de implementación mencionadas anteriormente, consulte plantillas de implementación para análisis de escala en la nube