Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Este artículo es la Fase 1 de 4 de la serie de procedimientos recomendados para la migración de Azure Synapse Spark a Microsoft Fabric.
Comience aquí antes de migrar los cuadernos, las definiciones de trabajos de Spark, los grupos o los metadatos de lago. Este artículo le ayuda a evaluar el ámbito de su infraestructura de Synapse Spark, elegir un enfoque de migración que coincida con su tolerancia al riesgo y el plazo de entrega, y comprender las diferencias de Fabric que afectan a la planificación.
Al final de este paso, debe saber qué debe mover, qué patrón de migración se va a usar, dónde se encuentran los principales riesgos de compatibilidad y qué restricciones de reversión o ejecución en paralelo debe tener en cuenta.
En este artículo aprenderá a:
- Evalúe la huella de Spark de Synapse.
- Elija entre lift-and-shift, modernización por fases y ejecución paralela.
- Tenga en cuenta las restricciones de reversión y sincronización.
- Revise las principales diferencias de características y arquitecturas entre Synapse Spark y Fabric Spark.
Evaluar la huella de Synapse Spark
Azure Synapse Analytics abarca varios tipos de carga de trabajo. Esta guía se centra en la migración de grupos de Spark, cuadernos, definiciones de trabajos de Spark, bases de datos del lago de datos y metadatos del Hive Metastore a Microsoft Fabric. Para instrucciones de migración relativas a grupo SQL dedicado, canalizaciones, Data Explorer y seguridad, consulte las guías complementarias.
| Carga de trabajo de Synapse | Fabric Destination | Herramienta de migración/itinerario |
|---|---|---|
| Grupos de Spark | Fabric Spark (Lakehouse) | Spark Migration Assistant (versión preliminar); migración manual de grupo o entorno |
| Blocs de notas | Cuadernos de Fabric | Spark Migration Assistant; refactorización de código para API específicas de Synapse |
| Definiciones de trabajos de Spark | Fabric definiciones de trabajos de Spark | Spark Migration Assistant (recomendado); recreación manual si es necesario |
| Bases de datos de Lake | Catálogo de Fabric Lakehouse | Spark Migration Assistant (tablas Delta a través de accesos directos); Exportación/importación de HMS para no Delta |
| Hive Metastore | Catálogo de Fabric Lakehouse | Cuadernos de exportación/importación de HMS; accesos directos de OneLake para datos |
| Servicios Vinculados | conexiones de Fabric/Key Vault | Crear conexiones Fabric; migrar secretos a Key Vault; refactorizar el código del cuaderno |
Ejecución de la herramienta de evaluación de Fabric
Antes de planear la migración, ejecute la herramienta de evaluación de Fabric para generar un informe completo del área de trabajo de origen de Synapse. La herramienta examina el área de trabajo y agrega un resumen de todos los objetos ( grupos de Spark, cuadernos, definiciones de trabajos de Spark, bases de datos de lago, servicios vinculados y sus configuraciones), lo que le proporciona una imagen clara del ámbito de migración.
Descargue la herramienta. La herramienta de evaluación de Fabric está disponible en el repositorio GitHub del cuadro de herramientas de Microsoft fabric en microsoft/fabric-toolbox.
Ejecute la evaluación. Dirija la herramienta hacia el área de trabajo de Azure Synapse. Examina todos los elementos relacionados con Spark y genera un informe con recuentos de objetos, configuraciones, dependencias y posibles problemas de compatibilidad.
Revise el informe. Use la salida de evaluación para comprender el ámbito de la migración: cuántos cuadernos, grupos, SJD y bases de datos deben migrarse, qué servicios vinculados están en uso y qué posibles bloqueadores existen (grupos de GPU, características no admitidas y otros).
Sugerencia
Ejecute la herramienta de evaluación al principio del proceso de planeación. El informe le ayuda a calcular el esfuerzo, identificar los bloqueadores y priorizar las cargas de trabajo que se van a migrar primero. También sirve como inventario de línea base para la fase 1 de la lista de comprobación de migración.
Patrones de migración
Elija el patrón de migración en función de las restricciones de la organización, la tolerancia al riesgo y la escala de tiempo.
Patrón de migración tal cual
Migre todas las cargas de trabajo de Spark a la vez mediante el Migration Assistant con cambios mínimos. Céntrese en hacer que los cuadernos y trabajos se ejecuten en Fabric lo más rápido posible; refactorice solo lo que se rompa (servicios vinculados, rutas de acceso de archivos, API no admitidas). Acepte la arquitectura actual tal cual.
Utiliza lift-and-shift cuando:
- El área de trabajo de Synapse se va a retirar en una fecha límite fija y debe actuar rápidamente.
- Las cargas de trabajo de Spark ya están bien diseñadas (código delta-first, limpio, pocas dependencias de servicio vinculadas).
- El alcance del área de trabajo es manejable para una migración única y el equipo puede abordar el esfuerzo de refactorización en un solo sprint.
- Los consumidores descendentes (Power BI, APIs) pueden tolerar una breve ventana de conmutación.
Modernización por fases
Migre las cargas de trabajo de forma incremental por prioridad, rediseñando a medida que avanza. Comience primero con las cargas de trabajo de mayor valor o riesgo más bajo. A medida que migre cada lote, consolide los grupos de Spark en menos entornos, adopte las mejores prácticas de Lakehouse (Delta-first, V-Order para consumidores de BI), habilite el NEE y rediseñe para Direct Lake.
Use la modernización por fases cuando:
- Tiene un entorno de Synapse grande o complejo con varios equipos y cargas de trabajo diversas que no se pueden migrar de un solo golpe.
- La arquitectura actual tiene deuda técnica que desea abordar (formatos no delta, dependencias de punto de montaje, grupos de Spark en expansión).
- Tiene flexibilidad en la escala de tiempo y quiere mejorar el rendimiento y la eficiencia de los costos durante la migración.
- Las diferentes cargas de trabajo tienen propietarios diferentes y necesitan programaciones de migración independientes.
Patrón de ejecución en paralelo
Ejecute ambos entornos simultáneamente durante la transición. Enrute las nuevas cargas de trabajo de Spark a Fabric mientras las cargas de trabajo heredadas continúan en Synapse. Valide las cargas de trabajo que han sido migradas comparando directamente los resultados antes de completar la transición. Retirar gradualmente Synapse a medida que aumenta la confianza.
Use una ejecución paralela cuando:
- Si sus flujos de trabajo tienen estrictos acuerdos de nivel de servicio o requisitos normativos que exigen una validación extendida antes del cambio.
- Debe demostrar que el rendimiento de Fabric cumple o supera al de Synapse antes de que las partes interesadas aprueben el desmantelamiento.
- Los consumidores de nivel inferior (paneles, API, modelos de ML) no pueden tolerar ninguna discrepancia durante la transición.
- Está migrando canalizaciones de producción en las que los resultados incorrectos tienen un gran impacto empresarial (informes financieros, cumplimiento).
La ejecución en paralelo presenta un problema de sincronización de datos que debe diseñar por adelantado. Elija uno de estos patrones:
- Capa de almacenamiento compartido: Tanto Synapse como Fabric deben leer y escribir en el mismo almacenamiento de ADLS Gen2 mediante los accesos directos de OneLake. Esto mantiene ambas plataformas en los mismos archivos Delta, pero debe evitar conflictos de escritura asegurándose de que solo una plataforma escribe en una tabla determinada a la vez.
- Write-once, read-both: Mantener Synapse como escritor principal durante la transición y permitir que Fabric lea los mismos datos a través de accesos directos. Después de validar los cuadernos migrados en Fabric, cambie la ruta de escritura a Fabric y configure Synapse como consumidor de solo lectura hasta su desmantelamiento. Esta es la opción más segura para la mayoría de las migraciones.
- Escritura doble: Evite ejecutar el mismo ETL en ambos entornos al mismo tiempo, a menos que ya tenga herramientas de comparación y conciliación automatizadas. La doble escritura tiende a crear divergencias, duplicaciones y sobrecarga operativa.
La ejecución en paralelo también afecta a la administración de cambios. Aunque Synapse sigue siendo el entorno de desarrollo activo, cualquier notebook, definición de trabajos Spark, configuración del pool de Spark o cambios de esquema de base de datos lake realizados en Synapse no se reflejan automáticamente en Fabric. Debe volver a migrar los recursos afectados para mantener ambos entornos alineados.
-
Cambios en el código deNotebook: Vuelva a ejecutar el Migration Assistant de Spark o vuelva a exportar manualmente y vuelva a importar los cuadernos actualizados. Vuelva a aplicar cualquier refactorización de código específica de Fabric, incluidas
notebookutils, actualizaciones de ruta de archivo y secretos de Key Vault. - Cambios en la definición del trabajo de Spark: Vuelva a migrar a través del Asistente de Migración o vuelva a crear manualmente las Definiciones de Trabajo de Spark (SJD) actualizadas en Fabric.
- Cambios de configuración del grupo de Spark: Actualice el entorno de Fabric correspondiente para que coincida con el tamaño de nodo revisado, la configuración de escalado automático y las bibliotecas.
- Cambios en el esquema de la base de datos del lago: Vuelva a ejecutar los cuadernos de exportación/importación de HMS, o cree o altere manualmente las tablas afectadas en el almacén de datos de Fabric.
Para reducir la sobrecarga de la remigración, establezca una congelación de cambios en el lado de Synapse una vez iniciada la migración. Si los cambios son inevitables, lleve un registro de cambios para poder reproducirlos en Fabric antes del cambio.
Consideraciones de reversión
La migración de Synapse a Fabric es una operación de copia; no modifica ni elimina el área de trabajo de Synapse de origen. Los grupos, cuadernos y datos originales de Spark siguen intactos durante todo el proceso. Esto hace que la reversión sea sencilla:
- Si los resultados de la migración no son satisfactorios, siga usando el área de trabajo de Synapse existente. No es necesario revertir ningún cambio.
- Elimine los artefactos de Fabric migrados (cuadernos, entornos, definiciones de trabajo de Spark) y vuelva a intentarlo después de solucionar problemas.
- Los accesos directos de OneLake apuntan al almacenamiento de ADLS Gen2 existente: la eliminación de accesos directos no afecta a los datos subyacentes.
- No desactive el área de trabajo de Synapse hasta que todas las cargas de trabajo migradas sean validadas en Fabric y los consumidores a lo largo del flujo sean redirigidos.
Sugerencia
Empiece a ser pequeño y demuestre la viabilidad rápidamente. Elija una carga de trabajo representativa de Spark y migrela de principio a fin, desde la configuración del grupo, incluyendo la refactorización de notebooks, hasta la validación. Elija algo que ejerce los patrones más comunes (acceso a datos, servicios vinculados, operaciones de catálogo), pero es lo suficientemente de bajo riesgo como para iterar. Documente los pasos, los problemas detectados y las resoluciones para crear un proceso repetible para migraciones posteriores.
Diferencias clave y paridad de características
Comprender las diferencias arquitectónicas entre Synapse y Fabric es fundamental para la planeación. En las tablas siguientes se resaltan las diferencias clave en la arquitectura de proceso y las funcionalidades de Spark.
Para obtener la comparación completa, consulte Compare Fabric y Azure Synapse Spark: Diferencias clave.
Proceso y arquitectura
| Capacidad | Azure Synapse | Microsoft Fabric |
|---|---|---|
| Modelo de implementación | PaaS (configurar y administrar recursos) | SaaS (basado en capacidad, sin administración de infraestructura) |
| Modelo de proceso | Grupos de Spark (basados en nodos); requiere un mínimo de 3 nodos | Unidades de capacidad (CU) compartidas en todas las cargas de trabajo; Grupos de Spark como plantillas de configuración; Se admite la ejecución de un solo nodo; Facturación de escalabilidad automática para Spark (pago por uso, similar al modelo de Synapse) |
| Motor de Spark | Grupos de Synapse Spark (Spark 3.4, 3.5); Grupos de GPU admitidos | Fabric Spark (Runtime 1.2/1.3/2.0: Spark 3.4–4.0); no hay compatibilidad con GPU; se ejecuta en hardware de última generación para mejorar el rendimiento. |
| Dimensionamiento | Escalado automático de nodos para Spark (min 3 nodos) | Escalado automático de nodos para Spark (mínimo de nodo único); escalado basado en capacidad |
| Inicio de sesión | Basado en grupos; inicio en frío para nuevos clústeres | Grupos de arranque (inicio a nivel de segundos); Grupos dinámicos personalizados; Modo de alta concurrencia |
| Modelo de costo | Por hora de nodo (Spark); pausar/reanudar | Dos opciones: (1) Fabric Spark usa un modelo de consumo compartido basado en unidad de capacidad (CU) o (2) Facturación con escalado automático para Spark – pago por uso en modo Spark |
Spark: Synapse Spark frente a Fabric Spark
| Capacidad | Synapse Spark | Fabric Spark |
|---|---|---|
| Versiones de Spark | Spark 3.4 (EOL), 3.5 (versión preliminar). | Spark 3.4 (RT 1.2 EOL), 3.5 (RT 1.3 GA), 4.0 (versión preliminar rt 2.0) |
| Aceleración de consultas | No hay ningún motor de aceleración nativo | Motor de ejecución nativo (Velox/Gluten, hasta 4 veces en TPC-DS) |
| Modelo de grupo | Grupos fijos con número máximo de nodos por grupo; mínimo 3 nodos | Grupos de inicio (inicio de segundos, sin necesidad de configuración); Grupos personalizados para tamaños de nodo específicos y bibliotecas personalizadas; Se admite la ejecución de un solo nodo |
| Seguridad (red) | Red virtual administrada; Puntos de conexión privados | Puntos de conexión privados administrados (MPE); Directivas de acceso saliente (OAP); Claves administradas por el cliente (CMK) |
| Compatibilidad con GPU | Grupos acelerados por GPU disponibles | No soportado |
| Alta concurrencia | No soportado | Compatible con: varios notebooks comparten una sesión de Spark |
| Administración de bibliotecas | Bibliotecas a nivel de pool y a nivel de área de trabajo; carga manual de wheel, JARs, tar.gz | Administración de bibliotecas basada en el entorno: fuentes públicas (PyPI/Conda) + cargas personalizadas (ruedas, JAR). Para replicar bibliotecas de nivel de área de trabajo de Synapse, cree un entorno con las bibliotecas necesarias y establézcalo como valor predeterminado del área de trabajo. Todos los cuadernos y los SJD del área de trabajo lo heredan automáticamente. |
| V-Order | No disponible | Optimización de Parquet en tiempo de escritura; un 40–60% de mejora en Power BI Direct Lake y un ~10% en el punto de conexión de análisis de SQL; sin beneficios de lectura en Spark; 15–33% de sobrecarga de escritura. |
| Optimización de la escritura | Deshabilitado de forma predeterminada | Habilitada de forma predeterminada |
| Formato de tabla predeterminado | Parquet (Delta opcional) | Delta Lake (valor predeterminado y necesario para las tablas de Lakehouse) |
| Hive Metastore | HMS integrado; HMS externo a través de Azure SQL DB o MySQL (en desuso después de Spark 3.4) | catálogo Fabric Lakehouse; Migración de HMS mediante scripts de exportación e importación |
| DMTS en portátiles | Soportado | Compatible con notebooks; todavía no es compatible con las definiciones de trabajos de Spark |
| Identidad administrada para KV | Soportado | Compatible con cuadernos y definiciones de trabajos de Spark |
| mssparkutils | Biblioteca completa (fs, credenciales, cuaderno, env, lakehouse) | notebookutils (API similar; algunas diferencias en los nombres de método) |