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 3 de 4 en la serie de mejores prácticas de migración de Azure Synapse Spark a Microsoft Fabric.
Use este artículo cuando esté listo para migrar el catálogo de Metastore de Hive y planee el acceso a los datos en Fabric. Este artículo se centra en dos decisiones: cómo migrar los metadatos de la tabla y si se usan accesos directos de OneLake (copia cero) o mover datos al almacenamiento accesible.
En este artículo aprenderá a:
- Evalúe las tablas administradas frente a externas para determinar el enfoque de migración.
- Exporte e importe metadatos de Metastore de Hive mediante flujos de trabajo de cuadernos.
- Cree accesos directos de OneLake para acceder sin copiar a los orígenes de datos existentes.
- Elija entre accesos directos, canalizaciones de copia y herramientas de transferencia masiva para el movimiento de datos.
Sugerencia
Cree su Target Lakehouse con esquemas habilitados. Los esquemas de Lakehouse permiten organizar tablas en colecciones con nombre (por ejemplo, ventas, marketing, hr). Spark Migration Assistant asigna la base de datos predeterminada de Synapse al esquema de dbo y las bases de datos adicionales a los esquemas adicionales en el mismo Lakehouse. Los esquemas se habilitan de forma predeterminada al crear una nueva instancia de Lakehouse en el portal de Fabric.
Para obtener la guía completa de migración de HMS, consulte Migración de metadatos de Metastore de Hive.
Evaluación de tablas administradas y externas
El primer paso crítico es distinguir las tablas administradas de las tablas externas en tu metastore de Synapse Hive.
- Tablas externas: Si los datos están en formato Delta de ADLS Gen2, cree accesos directos de OneLake directamente a las rutas de acceso de ADLS Gen2. No se necesita movimiento de datos.
- Tablas administradas: Los datos se almacenan en el directorio de almacenamiento interno de Synapse. Debe crear accesos directos de OneLake hacia esta ruta o copiar los datos a una ubicación accesible de ADLS Gen2.
Ruta de acceso del directorio del almacenamiento de tablas administrado de Synapse:
abfss://<container>@<storage>.dfs.core.windows.net/synapse/workspaces/<workspace>/warehouse
Flujo de trabajo de migración
Microsoft proporciona cuadernos de exportación e importación para la migración de Metastore de Hive. El proceso tiene dos fases.
Para obtener la guía completa de migración de HMS, consulte Migración de metadatos de Metastore de Hive.
Fase 1: Exportación de metadatos desde Synapse
Importar el cuaderno de exportación de HMS en el área de trabajo de Azure Synapse. Este cuaderno consulta y exporta metadatos hmS de bases de datos, tablas y particiones a un directorio intermedio de OneLake.
Configurar parámetros. Establezca el nombre del área de trabajo de Synapse, los nombres de base de datos que se van a exportar y oneLake lakehouse de destino para el almacenamiento provisional. La API de catálogo interno de Spark se usa para leer objetos de catálogo.
Ejecute la exportación. Ejecute todas las celdas del notebook. Se graban metadatos en la sección Archivos de Fabric Lakehouse siguiendo una jerarquía estructurada de carpetas.
Fase 2: Importación de metadatos en Fabric Lakehouse
Cree accesos directos para el acceso a datos. Cree un acceso directo en la sección Archivos de Lakehouse que apunte al directorio de almacenamiento de Spark de Synapse. Esto hace que los datos de tabla administrados estén accesibles para Fabric.
Configurar mapeos de almacén. En el caso de las tablas administradas, proporcione
WarehouseMappingspara reemplazar las rutas de acceso de directorio de almacenamiento de Synapse antiguas por las rutas de acceso directo de Fabric. Todas las tablas administradas se convierten en tablas externas durante la importación.Ejecutar el cuaderno de importación en Fabric para crear objetos de catálogo (bases de datos, tablas, particiones) en Lakehouse mediante la API de catálogo interna de Spark.
Compruebe. Compruebe que todas las tablas importadas están visibles en la sección Tablas de la interfaz de usuario de Lakehouse Explorer.
Limitaciones y consideraciones
Los scripts de migración usan la API de catálogo interna de Spark, no conexiones directas de base de datos HMS. Esto podría no escalarse bien para catálogos muy grandes( para entornos grandes, considere la posibilidad de modificar la lógica de exportación para consultar directamente la base de datos HMS.
No hay ninguna garantía de aislamiento durante la exportación. Si el proceso de Spark de Synapse modifica el metastore simultáneamente, es posible que se introduzcan datos incoherentes. Programe la migración durante una ventana de mantenimiento.
Las funciones no se incluyen en los scripts de migración actuales.
Después de la migración, los accesos directos de OneLake proporcionan acceso continuo a los datos. Si Synapse continúa escribiendo en las mismas rutas de acceso de ADLS Gen2, Fabric ve los datos actualizados a través de accesos directos automáticamente (sincronización de nivel de datos). Sin embargo, las nuevas tablas o cambios de esquema en el HMS de Synapse no se propagarán automáticamente; debe volver a ejecutar los scripts de migración o crear manualmente nuevas tablas en el Fabric Lakehouse.
Metastore de Hive externo (Azure SQL DB / MySQL): Algunas áreas de trabajo de Synapse usan un HMS externo respaldado por Azure SQL Database o Azure Database for MySQL para persistir metadatos de catálogo fuera del área de trabajo y compartirlos con HDInsight o Databricks. Fabric no admite la conexión a un metastore de Hive externo; usa exclusivamente el catálogo de Lakehouse. Si usa un HMS externo, debe migrar los metadatos al catálogo de Fabric Lakehouse. Para ello, consulte directamente la base de datos HMS externa (a través de JDBC) para exportar definiciones de tabla y volver a crearlas en Fabric mediante Spark SQL o los cuadernos de importación de HMS. Tenga en cuenta que la compatibilidad externa con HMS en Synapse está en desuso después de Spark 3.4.
Sugerencia
Para la sincronización en curso cuando Synapse y Fabric están activas: use accesos directos de OneLake para la sincronización de nivel de datos (automático) y programe las repeticiones periódicas de los cuadernos de exportación e importación de HMS o cree un cuaderno de conciliación para detectar y sincronizar nuevas tablas.
Opciones para la migración de datos
Tiene datos en "ADLS Gen2" vinculados a su área de trabajo de Synapse, que debe hacer accesibles en "Fabric Lakehouse" sin innecesaria duplicación de datos. Elija entre los métodos siguientes.
OneLake Shortcuts (recomendado, sin copiar): Crear accesos directos en Fabric Lakehouse que apunten a las rutas de acceso de ADLS Gen2 existentes. Datos de formato delta en la sección Tablas se registran automáticamente en el catálogo de Lakehouse. Los datos CSV/JSON/Parquet se incluyen en la sección Archivos. No se requiere movimiento de datos.
mssparkutils fastcp: Para copiar datos de ADLS Gen2 a OneLake en cuadernos.
AzCopy: utilidad de línea de comandos para la copia masiva de datos de ADLS Gen2 a OneLake.
Data Factory Copy Activity: Use Fabric Data Factory (o canalizaciones de ADF/Synapse existentes) para copiar datos en Lakehouse.
Explorador de Azure Storage: herramienta Visual para mover archivos de ADLS Gen2 a OneLake.
Sugerencia
Se prefieren métodos abreviados sobre el movimiento de datos siempre que sea posible. Los accesos directos evitan la duplicación de datos y los costos de almacenamiento, y las tablas Delta de la sección Tablas se pueden detectar automáticamente en el punto de conexión de SQL Analytics y Power BI.