Compartir a través de


Exportar datos de Dataverse en formato Delta Lake

Use Azure Synapse Link para Dataverse para exportar sus datos de Microsoft Dataverse en formato Delta Lake. Delta Lake es el formato nativo de Microsoft Fabric así como de muchas otras herramientas, como Azure Databricks. La exportación de datos en formato Delta Lake directamente desde Dataverse elimina la necesidad de tener procesos de conversión de Delta Lake separados por su cuenta y acelera el tiempo de obtención de información. En este artículo se proporciona información sobre esta característica y se muestra cómo realizar las siguientes tareas:

  • Explica Delta Lake y Parquet y por qué debería exportar datos en este formato.
  • Exporte sus datos de Dataverse a su espacio de trabajo Azure Synapse Analytics en formato Delta Lake con el Azure Synapse Link.
  • Supervise su Azure Synapse Link y la conversión de datos.
  • Ver sus datos desde Azure Data Lake Storage Gen2.
  • Vea sus datos desde Synapse Workspace.
  • Vea los datos en Microsoft Fabric.

¿Qué es Delta Lake?

Delta Lake es un proyecto de código abierto que permite construir una arquitectura de lago sobre lagos de datos. Delta Lake proporciona transacciones ACID (atomicidad, consistencia, aislamiento y durabilidad), manejo escalable de metadatos y unifica el procesamiento de datos por lotes y transmisión por encima de los lagos de datos existentes. Azure Synapse Analytics es compatible con Linux Foundation Delta Lake. La versión actual de Delta Lake incluida con Azure Synapse tiene soporte de lenguaje para Scala, PySpark y .NET. Más información: ¿Qué es Delta Lake?. También puede obtener más información en el vídeo Introducción a las tablas delta.

Apache Parquet es el formato de referencia para Delta Lake, lo que le permite aprovechar los esquemas de compresión y codificación eficientes que son nativos del formato. El formato de archivo Parquet utiliza compresión por columnas. Es eficiente y ahorra espacio de almacenamiento. Las consultas que obtienen valores de columna específicos no necesitan leer los datos de fila completos, lo que mejora el rendimiento. Por lo tanto, el grupo de SQL sin servidor necesita menos tiempo y menos solicitudes de almacenamiento para leer los datos.

¿Por qué usar Delta Lake?

  • Escalabilidad: Delta Lake se basa en la licencia Apache de código abierto, que está diseñada para cumplir con los estándares de la industria para manejar cargas de trabajo de procesamiento de datos a gran escala.
  • Fiabilidad: Delta Lake proporciona transacciones ACID, lo que garantiza la consistencia y fiabilidad de los datos incluso ante fallas o acceso simultáneo.
  • Rendimiento: Delta Lake aprovecha el formato de almacenamiento en columnas de Parquet, proporcionando mejores técnicas de compresión y codificación, lo que puede conducir a un mejor rendimiento de las consultas en comparación con los archivos CSV de consulta.
  • Rentable: el formato de archivo Delta Lake es una tecnología de almacenamiento de datos altamente comprimidos que ofrece importantes ahorros potenciales de almacenamiento para las empresas. Este formato está diseñado específicamente para optimizar el procesamiento de datos y reducir potencialmente la cantidad total de datos procesados o el tiempo de ejecución requerido para la informática bajo demanda.
  • Cumplimiento de la protección de datos: Delta Lake con el Azure Synapse Link proporciona herramientas y funciones que incluyen la eliminación temporal y la eliminación permanente para cumplir con diversas regulaciones de privacidad de datos , incluido el Reglamento general de protección de datos (RGPD).

Al configurar un Azure Synapse Link para Dataverse, puede habilitar la característica exportar a Delta Lake y conectarse con un área de trabajo de Synapse y un grupo de Spark. Azure Synapse Link exporta las tablas Dataverse seleccionadas en formato CSV a intervalos de tiempo designados y las procesa a través de un trabajo de Spark de conversión de Delta Lake. Al finalizar este proceso de conversión, los datos CSV se limpian para guardarlos en el almacenamiento. Además, una serie de trabajos de mantenimiento están programados para ejecutarse diariamente, realizando automáticamente procesos de compactación y limpieza para fusionar y limpiar archivos de datos para optimizar aún más el almacenamiento y mejorar el rendimiento de las consultas.

Importante

  • Si va a actualizar de CSV a Delta Lake con vistas personalizadas existentes, le recomendamos que actualice el script para reemplazar todas las tablas particionadas por non_partitioned. Para ello, busque instancias de _partitioned y reemplácelas con una cadena vacía.
  • Para la configuración de Dataverse, solo agregar está habilitado de forma predeterminada para exportar datos CSV en el modo appendonly. La tabla de Delta Lake tendrá una estructura de actualización local porque la conversión de Delta Lake viene con un proceso de combinación periódico.
  • Debe aprovisionar un grupo de Spark (recursos de cómputo) en su propia suscripción de Azure para la conversión Delta. Este grupo de Spark se usa para realizar conversiones Delta periódicas en función del intervalo de tiempo elegido por usted.
  • No se incurre en costos con la creación de grupos de Spark. Solo se incurre en cargos una vez que se ejecuta un trabajo de Spark en el grupo de Spark de destino y se crea una instancia de Spark a pedido. Estos costos están relacionados con el uso de Azure Synapse workspace Spark y se facturan mensualmente. El coste de realizar computación con Spark depende principalmente del intervalo de tiempo para la actualización incremental y los volúmenes de datos. Más información: Precios de Azure Synapse Analytics
  • Debe crear un grupo de Spark con la versión 3.4. Si ya está usando esta característica con la versión 3.3 de Spark, debe realizar una actualización local para sus perfiles existentes. Más información: Actualización local a Apache Spark 3.4 con Delta Lake 2.4

Nota

El estado del Azure Synapse Link en Power Apps (make.powerapps.com) refleja el estado de conversión de Delta Lake:

  • Count muestra el número total de registros de la tabla del Delta Lake.
  • Last synchronized on la fecha y hora representa la marca de tiempo de la última conversión exitosa.
  • Sync status se muestra como activo una vez que se completa la sincronización de datos y la conversión de Delta Lake, lo que indica que los datos están listos para su consumo.

Requisitos previos

  • Dataverse: debe tener el rol de seguridad de administrador del sistema Dataverse. Además, las tablas que desee exportar mediante Azure Synapse Link deben tener habilitada la propiedad Control de cambios. Más información: Opciones avanzadas
  • Azure Data Lake Storage Gen2: debe tener una cuenta de Azure Data Lake Storage Gen2 y el acceso a los roles Propietario y Colaborador de datos de Storage Blob. Su cuenta de almacenamiento debe habilitar Espacio de nombres jerárquico y Acceso a la red pública para la configuración inicial y la sincronización delta. Se requiere Permitir el acceso a la clave de la cuenta de almacenamiento solo para la configuración inicial.
  • Área de trabajo de Synapse: debe tener un área de trabajo de Synapse y el rol Propietario en el control de acceso (IAM) y el acceso al rol Administrador de Synapse dentro de Synapse Studio. El área de trabajo de Synapse debe estar en la misma región que su cuenta de Azure Data Lake Storage Gen2. La cuenta de almacenamiento debe agregarse como un servicio vinculado dentro de Synapse Studio. Para crear un área de trabajo de Synapse, vaya a Crear un área de trabajo de Synapse.
  • Un grupo Apache Spark en el Azure Synapse workspace conectado con Apache Spark versión 3.4 utilizando esta configuración de grupo de Spark recomendada. Para obtener información sobre cómo crear un grupo de Spark, vaya a Crear nuevo grupo de Apache Spark.
  • El requisito mínimo de versión Microsoft Dynamics 365 para usar esta función es 9.2.22082. Más información: Suscribirse a actualizaciones de acceso anticipado

Esta configuración se puede considerar un paso de arranque para casos de uso medio.

  • Tamaño del nodo: pequeño (4 núcleos virtuales/32 GB)
  • Escalado automático: Habilitado
  • Número de nodos: de 3 a 10 (o 20 si es necesario. 1Más información a continuación).
  • Pausa automática: Habilitada
  • Número de minutos inactivo: 5
  • Apache Spark: 3.4
  • Asignar ejecutores dinámicamente: habilitado
  • Número predeterminado de ejecutores: 1 a 9

Importante

  • Use el grupo de Spark exclusivamente para la operación de conversión de Delta Lake con Synapse Link para Dataverse. Para obtener una fiabilidad y un rendimiento óptimos, evite ejecutar otros trabajos de Spark con el mismo grupo de Spark.
  • Es posible que tenga que aumentar el número de nodos del grupo de Spark si espera que se procese un gran número de filas. Si el tamaño del grupo de Spark es insuficiente, es posible que se produzca un error en los trabajos de conversión Delta
  • El sistema usa el mismo grupo de Spark para ejecutar un trabajo nocturno que compacta archivos Delta en el lago entre las 11 p. m. y las 6 a. m., hora local. El sistema determina la hora nocturna para ejecutar este trabajo en función de la ubicación de su entorno de Dataverse. No puede proporcionar una ventana de tiempo específica. Esta opción reduce el tamaño de los archivos Delta mediante la combinación de archivos, lo que se conoce como "compactación". En raras ocasiones, este trabajo puede interferir con el trabajo de conversión incremental. Puede aumentar el número de nodos a 20 en caso de que observe estos errores.
  • Solo se le cobrará por los nodos del grupo de Spark realmente utilizados. Es posible que el aumento del número de nodos no se traduzca en cargos más altos.

Conecte Dataverse al espacio de trabajo de Synapse y exporte datos en formato Delta Lake

  1. Inicie sesión en Power Apps y seleccione el entorno que desee.

  2. En el panel de navegación izquierdo, seleccione Azure Synapse Link. Si el elemento no se encuentra en el panel lateral, seleccione …Más y, a continuación, el elemento que desee.

  3. En la barra de comandos, seleccione Nuevo enlace

  4. Seleccione Conectarse a su espacio de trabajo Azure Synapse Analytics y luego seleccione Suscripción, Grupo de recursos y Nombre del espacio de trabajo.

  5. Seleccione Usar grupo de Spark para procesar y luego seleccione el grupo de Spark creado previamente y Cuenta de almacenamiento. Configuración de Azure Synapse Link para Dataverse que incluye grupo de Spark.

  6. Seleccione Siguiente.

  7. Agregue las tablas que desea exportar y luego seleccione Avanzado.

  8. De forma opcional, seleccione Mostrar configuración avanzada e Ingrese el intervalo de tiempo, en minutos, para la frecuencia con la que se deben capturar las actualizaciones incrementales.

  9. Seleccione Guardar.

  1. Seleccione el Azure Synapse Link deseado y elija Ir a espacio de trabajo Azure Synapse Analytics en la barra de comandos.
  2. Seleccione Supervisar>Aplicaciones Apache Spark. Más información: Utilizar Synapse Studio para monitorear sus aplicaciones Apache Spark

Vea sus datos desde Synapse Workspace

  1. Seleccione el Azure Synapse Link deseado y elija Ir a espacio de trabajo Azure Synapse Analytics en la barra de comandos.
  2. Expanda las Bases de datos Lake en el panel izquierdo, seleccione dataverse-environmentNameorganizationUniqueName y expanda Tablas. Todas las Tablas de Parquet se enumeran y están disponibles para su análisis con la convención de nomenclatura DataverseTableName.(Non_partitioned Table).

Nota

No utilice tablas con la convención de nomenclatura _partitioned. Cuando elige Delta parquet como formato, las tablas con la convención de nomenclatura _partition se utilizan como tablas provisionales y se eliminan una vez que el sistema las utiliza.

Ver sus datos desde Azure Data Lake Storage Gen2

  1. Seleccione el Azure Synapse Link deseado y elija Ir a Azure data lake en la barra de comandos.
  2. Seleccione los Contenedores en Almacenamiento de datos.
  3. Seleccione *dataverse- *environmentName-organizationUniqueName. Todos los archivos de Parquet se almacenan en la carpeta deltalake.

Actualización local a Apache Spark 3.4 con Delta Lake 2.4

De acuerdo con la directiva de tiempo de ejecución de Synapse para el ciclo de vida de Apache Spark, Azure Synapse Runtime para Apache Spark 3.3 se retirará y deshabilitará a partir del 31 de marzo de 2025. Después de la fecha de finalización del soporte técnico, los tiempos de ejecución retirados no estarán disponibles para los nuevos grupos de Spark y los flujos de trabajo existentes con grupos de Spark 3.3 no se ejecutarán mientras los metadatos permanezcan temporalmente en el área de trabajo de Synapse. Más información: Tiempo de ejecución de Azure Synapse para Apache Spark 3.3 (EOSA).

Para asegurarse de que los perfiles Synapse Link existentes sigan procesando datos, debe actualizar los perfiles Synapse Link para usar grupos de Spark 3.4 mediante el "proceso de actualización in situ."

Requisitos previo de actualización local

  • Debe tener un Azure Synapse Link existente para el perfil de Dataverse Delta Lake que se ejecute con una versión 3.3 de Synapse Spark.
  • Debe crear un nuevo grupo de Synapse Spark con Spark versión 3.4, utilizando la misma configuración de hardware de nodos o una superior dentro del mismo espacio de trabajo de Synapse. Para obtener información sobre cómo crear un grupo de Spark, vaya a Crear nuevo grupo de Apache Spark. Este grupo de Spark debe crearse independientemente del grupo 3.3 actual: no elimine el grupo de Spark 3.3 ni cree un grupo de Spark 34 con el mismo nombre

Actualización local a Spark 3.4

  1. Inicie sesión en Power Apps y seleccione su entorno preferido.
  2. En el panel de navegación izquierdo, seleccione Azure Synapse Link. Si el elemento no está en el panel de navegación izquierdo, seleccione …Más y, a continuación, el elemento que desee.
  3. Abra el perfil de Azure Synapse Link, y luego seleccione Actualizar a Apache Spark 3.4 con Delta Lake 2.4.
  4. Seleccione el grupo de Spark disponible de la lista y seleccione Actualizar.

Nota

  • La actualización del grupo de Spark sucede solo cuando se desencadena un nuevo trabajo de Spark de conversión de Delta Lake. Asegúrese de tener al menos un cambio de datos después de seleccionar Actualizar.
  • Puede eliminar el grupo de Spark 3.3 anterior después de comprobar que los trabajos de conversión Delta usan el nuevo grupo.

Qué es Azure Synapse Link para Dataverse