Metodología de éxito en la implementación de Synapse: evaluación del diseño del área de trabajo
Nota
Este artículo forma parte de la serie de artículos Éxito en la implementación de Azure Synapse por diseño. Para información general sobre la serie, consulte Implementación correcta de Azure Synapse por diseño.
El área de trabajo de Synapse es una experiencia de usuario gráfica unificada que combina motores de procesamiento de datos y análisis, lagos de datos, bases de datos, tablas, conjuntos de datos y artefactos de informes, junto con orquestación de código y procesos. Teniendo en cuenta el número de tecnologías y servicios que se integran en el área de trabajo de Synapse, asegúrese de que los componentes clave están incluidos en el diseño.
Revisión del diseño del área de trabajo de Synapse
Identifique si el diseño de la solución implica una o varias áreas de trabajo de Synapse. Determine los controladores de este diseño. Aunque puede haber diferentes motivos, en la mayoría de los casos, el motivo de varias áreas de trabajo es la segregación de seguridad o la segregación de facturación. Al determinar el número de límites de áreas de trabajo y de bases de datos, tenga en cuenta que existe un límite de 20 áreas de trabajo por suscripción.
Identifique qué elementos o servicios de cada área de trabajo se deben compartir y con qué recursos. Los recursos pueden incluir lagos de datos, entornos de ejecución de integración (IR), metadatos o configuraciones y código. Determine por qué se ha elegido este diseño en particular en términos de posibles sinergias. Pregúntese si estas sinergias justifican el costo adicional y la sobrecarga de administración.
Revisión del diseño del lago de datos
Se recomienda que el lago de datos (si forma parte de la solución) esté correctamente dividido en capas. Debe dividir el lago de datos en tres áreas principales relacionadas con los conjuntos de datos Bronze, Silver y Gold. Bronze (o el nivel sin procesar) puede residir en su propia cuenta de almacenamiento independiente porque tiene unos controles de acceso más estrictos debido a los datos confidenciales enmascarados que podría almacenar.
Revisión del diseño de seguridad
Revise el diseño de seguridad del área de trabajo y compárelo con la información recopilada durante la valoración. Asegúrese de que se cumplan todos los requisitos y se hayan tenido en cuenta todas las restricciones. Para facilitar la administración, se recomienda que los usuarios se organicen en grupos con la generación de perfiles de permisos adecuada: puede simplificar el control de acceso mediante grupos de seguridad que se alinean con los roles. De este modo, los administradores de red pueden agregar o quitar usuarios de los grupos de seguridad adecuados para administrar el acceso.
Tanto los grupos de SQL sin servidor como las tablas de Apache Spark almacenan sus datos en un contenedor de Azure Data Lake Gen2 (ADLS Gen2) que está asociado al área de trabajo. Las bibliotecas de Apache Spark instaladas por el usuario también se administran en esta misma cuenta de almacenamiento. Para habilitar estos casos de uso, tanto los usuarios como la identidad de servicio administrada del área de trabajo (MSI) se deben agregar al rol Colaborador de datos de Storage Blob del contenedor de almacenamiento de ADLS Gen2. Compruebe este requisito en función de los requisitos de seguridad.
Los grupos de SQL dedicados proporcionan un amplio conjunto de características de seguridad para cifrar y enmascarar datos confidenciales. Los grupos de SQL dedicados y sin servidor habilitan toda el área expuesta de permisos de SQL Server, incluidos los roles integrados, los roles definidos por el usuario, la autenticación de SQL y la autenticación de Microsoft Entra. Revise el diseño de seguridad para el grupo de SQL dedicado de la solución y el acceso y los datos del grupo de SQL sin servidor.
Revise el plan de seguridad para el lago de datos y todas las cuentas de almacenamiento de ADLS Gen2 (y otras) que formarán parte de la solución de Azure Synapse Analytics. El almacenamiento de ADLS Gen2 no es un motor de proceso y, por lo tanto, no tiene una capacidad integrada para enmascarar selectivamente los atributos de datos. Puede aplicar permisos de ADLS Gen2 en la cuenta de almacenamiento o en el nivel de contenedor mediante el control de acceso basado en rol (RBAC) o en el nivel de carpeta o archivo mediante las listas de control de acceso (ACL). Revise cuidadosamente el diseño e intente evitar una complejidad innecesaria.
Estos son algunos puntos que hay que tener en cuenta para el diseño de seguridad.
- Asegúrese de que los requisitos de configuración de Microsoft Entra ID se incluyan en el diseño.
- Compruebe si hay escenarios entre inquilinos. Estos problemas pueden surgir porque algunos datos están en otro inquilino de Azure, se deben mover a otro inquilino, o los usuarios tienen que acceder a ellos desde otro inquilino. Asegúrese de que estos escenarios se tengan en cuenta en el diseño.
- ¿Qué son los roles de cada área de trabajo? ¿Cómo usarán el área de trabajo?
- ¿Cómo está diseñada la seguridad dentro del área de trabajo?
- ¿Quién puede ver todos los scripts, cuadernos y canalizaciones?
- ¿Quién puede ejecutar scripts y canalizaciones?
- ¿Quién puede crear, pausar o reanudar los grupos de SQL y Spark?
- ¿Quién puede publicar cambios en el área de trabajo?
- ¿Quién puede confirmar los cambios en el control de código fuente?
- ¿Las canalizaciones tendrán acceso a los datos mediante credenciales almacenadas o la identidad administrada del área de trabajo?
- ¿Los usuarios tienen el acceso adecuado al lago de datos para examinar los datos en Synapse Studio?
- ¿El lago de datos está protegido correctamente mediante la combinación adecuada de RBAC y ACL?
- ¿Se han establecido correctamente los permisos de usuario del grupo de SQL para cada rol (científico de datos, desarrollador, administrador, usuario empresarial y otros)?
Revisión del diseño de redes
Estos son algunos puntos que hay que tener en cuenta para el diseño de red.
- ¿Está diseñada la conectividad entre todos los recursos?
- ¿Cuál es el mecanismo de red que se va a usar (Azure ExpressRoute, puntos de conexión de internet público o privados)?
- ¿Necesita poder conectarse de forma segura a Synapse Studio?
- ¿Se ha tenido en cuenta la filtración de datos?
- ¿Necesita conectarse a orígenes de datos locales?
- ¿Necesita conectarse a otros orígenes de datos en la nube o motores de proceso, como Azure Machine Learning?
- ¿Se han revisado los componentes de red de Azure, como los grupos de seguridad de red (NSG), para lograr una conectividad y un movimiento de datos adecuados?
- ¿Se ha tenido en cuenta la integración con las zonas DNS privadas?
- ¿Necesita poder examinar el lago de datos desde Synapse Studio o simplemente consultar datos en el lago de datos con SQL sin servidor o PolyBase?
Por último, identifique todos los consumidores de datos y compruebe que se tenga en cuenta su conectividad en el diseño. Compruebe que los outposts de red y seguridad permiten al servicio acceder a los orígenes locales necesarios y que se admiten sus protocolos y mecanismos de autenticación. En algunos escenarios, es posible que deba tener más de un entorno de ejecución de integración autohospedado o puerta de enlace de datos para soluciones SaaS, como Microsoft Power BI.
Revisión del diseño de supervisión
Revise el diseño de la supervisión de los componentes de Azure Synapse para asegurarse de que cumplen los requisitos y expectativas identificados durante la valoración. Compruebe que se ha diseñado la supervisión de los recursos y el acceso a los datos y que identifica cada requisito de supervisión. Se debe implementar una solución de supervisión sólida como parte de la primera implementación en producción. De este modo, los errores se pueden identificar, diagnosticar y solucionar a tiempo. Además de la infraestructura base y las ejecuciones de canalización, también se deben supervisar los datos. En función de los componentes de Azure Synapse en uso, identifique los requisitos de supervisión de cada componente. Por ejemplo, si los grupos de Spark forman parte de la solución, supervise el almacén de registros con formato incorrecto.
Estos son algunos puntos que hay que tener en cuenta para el diseño de supervisión.
- ¿Quién puede supervisar cada tipo de recurso (canalizaciones, grupos y otros)?
- ¿Cuánto tiempo se deben conservar los registros de actividad de la base de datos?
- ¿La retención del registro de bases de datos y el área de trabajo usarán Log Analytics o Azure Storage?
- ¿Se desencadenarán alertas en caso de error de canalización? Si es así, ¿quién debe recibir una notificación?
- ¿Qué nivel de umbral de un grupo de SQL debe desencadenar una alerta? ¿A quién se debe enviar una notificación?
Revisión del diseño del control de código fuente
De forma predeterminada, un área de trabajo de Synapse aplica los cambios directamente al servicio Synapse mediante la funcionalidad de publicación integrada. Puede habilitar la integración del control de código fuente, lo que proporciona muchas ventajas. Entre las ventajas se incluyen una mejor colaboración, control de versiones, aprobaciones y canalizaciones de versión para promover los cambios mediante entornos de desarrollo, prueba y producción. Azure Synapse permite un único repositorio de control de código fuente por área de trabajo, que puede ser GitHub o Git de Azure DevOps.
Estos son algunos puntos que hay que tener en cuenta para el diseño de control del código fuente.
- Si usa Git de Azure DevOps, ¿están el área de trabajo de Synapse y su repositorio en el mismo inquilino?
- ¿Quién podrá acceder al control de código fuente?
- ¿Qué permisos se concederán a cada usuario en el control de código fuente?
- ¿Se ha desarrollado una estrategia de bifurcación y combinación?
- ¿Se desarrollarán canalizaciones de versión para la implementación en distintos entornos?
- ¿Se usará un proceso de aprobación para combinar y para canalizaciones de versión?
Nota
El diseño del entorno de desarrollo es de una importancia fundamental para el éxito del proyecto. Si se ha diseñado un entorno de desarrollo, se evaluará en una fase independiente de esta metodología.
Pasos siguientes
En el siguiente artículo de la serie Éxito de Azure Synapse por diseño, aprenda a evaluar el diseño de integración de datos y a asegurarse de que cumple las directrices y los requisitos.