Compartir a través de


Preguntas más frecuentes de Azure Synapse Link for Dataverse

Este artículo proporciona información relacionada con las preguntas frecuentes sobre la exportación de datos de tablas de Microsoft Dataverse a Azure Synapse Analytics y Azure Data Lake.

¿Puedo realizar manualmente tareas como crear, actualizar, eliminar o configurar directivas de eliminación automática para archivos de datos en el almacenamiento de Azure conectado?

Los archivos de datos no deben ser modificados por un cliente y ningún archivo de cliente debe colocarse en las carpetas de datos.

Nota

Para eliminar datos obsoletos y estancados en el lago de datos sin romper el Azure Synapse Link, considere usar la función Consultar y analizar las actualizaciones incrementales

¿Cómo puedo acceder a mi tabla de relaciones?

Para acceder a relaciones de varios a varios, la relación estará disponible como una tabla a seleccionar en la página Agregar tablas para un nuevo enlace y en Administrar tablas para un enlace preexistente.

Nota

Todos los datos Relaciones están en modo de solo agregar de forma predeterminada cuando se escriben en formato CSV.

Azure Synapse Link es una característica gratuita con Dataverse. El uso de Azure Synapse Link for Dataverse no genera cargos adicionales en Dataverse. Sin embargo, considere los costes potenciales del servicio Azure:

¿Qué sucede cuando agrego una columna?

Cuando se agrega una nueva columna a una tabla en el origen, también se agrega al final del archivo en el destino en la partición de archivo correspondiente. Si bien las filas que existían antes de la adición de la columna no mostrarán la nueva columna, las filas nuevas o actualizadas mostrarán la columna recién agregada.

¿Qué sucede cuando elimino una columna?

Cuando se elimina una columna de una tabla en el origen, no se elimina del destino. En lugar de ello, las filas dejan de actualizarse y se marcan como nulas mientras se conservan las filas anteriores.

¿Qué sucede si cambio el tipo de datos de una columna?

Cambiar el tipo de datos de una columna es un cambio importante y deberá desvincularla y volver a vincularla.

¿Qué sucede cuando elimino una fila?

La eliminación de una fila se procesa de manera diferente según las opciones de escritura de datos que elija:

  • Actualización local con formato CSV: este es el modo predeterminado. Cuando se elimina una fila de la tabla de esta manera, también se elimina la fila de la partición de datos correspondiente en Azure Data Lake. Es decir, los datos se borran definitivamente del destino.
  • Solo anexar con formato CSV y actualizar carpeta incremental: en este modo, cuando se elimina una fila de tabla de Dataverse, no se elimina definitivamente del destino. En su lugar, se agrega una fila y se establece como isDeleted=True en el archivo de la partición de datos correspondiente en Azure Data Lake.
  • Exportar al formato de lago Delta: Azure Synapse Link realiza una eliminación temporal de los datos durante el siguiente ciclo de sincronización delta, seguida de una eliminación definitiva después de 30 días.

¿Por qué no veo un encabezado de columna en el archivo exportado?

Azure Synapse Link sigue el modelo de datos comunes para hacer posible que los datos y su significado se compartan entre aplicaciones y procesos empresariales como Microsoft Power Apps, Power BI, Dynamics 365 y Azure. En cada carpeta CDM, los metadatos, como un encabezado de columna, se almacenan en el archivo model.json. Más información: Common Data Model y Azure Data Lake Storage Gen2 | Microsoft Learn

¿Por qué el archivo Model.json aumenta o cambia de longitud para los tipos de datos y no mantiene lo definido en Dataverse?

Model.json mantiene la longitud de la base de datos para el tamaño de la columna. Dataverse tiene un concepto de longitud de base de datos para cada columna. Si crea una columna con un tamaño de 200 y luego la reduce a 100, Dataverse todavía permite que sus datos existentes estén presentes en Dataverse. Lo hace manteniendo DBLength en 200 y MaxLength en 100. Lo que ve en Model.json es DBLength y si lo usa para procesos posteriores, nunca proporcionará menos espacio para sus columnas de Dataverse.

Nota

Los campos de notas se definen como varchar(max) con una longitud máxima predeterminada de 9999.

¿Qué formatos de fecha y hora se pueden esperar en tablas de Dataverse exportadas?

Hay tres formatos de fecha y hora que se pueden esperar en el formato de tablas de Dataverse exportadas.

Nombre de columna Format Tipo de datos Ejemplo
SinkCreatedOn y SinkModifiedOn M/d/aaaa H:mm:ss tt datetime 6/28/2021 4:34:35 PM
CreatedOn aaaa-MM-dd'T'HH:mm:ss.sssssssXXX datetimeOffset 2018-05-25T16:21:09.0000000+00:00
Todas las demás columnas aaaa-MM-dd'T'HH:mm:ss'Z' datetime 2021-06-25T16:21:12Z

Nota

El tipo de datos CreatedOn cambió de datetime a datetimeOffset el 29/07/2022. Para editar el formato del tipo de datos de una tabla creada antes del cambio, suelte y vuelva a agregar la tabla.

Puede elegir diferentes comportamientos de columna para una columna de fecha y hora en Dataverse, que actualiza el formato del tipo de datos. Más información: Comportamiento y formato de la columna de fecha y hora

¿Por qué veo nombres de archivos 1.csv o 1_001.csv en lugar de nombres de archivos particionados con fecha y hora normales para algunas tablas de Dataverse?

Se espera este comportamiento cuando elige el modo de exportación de solo agregar y tiene tablas sin una columna CreatedOn válida. Los blobs se organizan en archivos como 1.csv, 2.csv (empleando particiones personalizadas debido a la ausencia de una fecha de creación válida). Cuando una partición se acerca al 95 % del MaxBlockPerBlobLimit, el sistema genera automáticamente un nuevo archivo, ilustrado aquí como 1_001.csv.

¿Cuándo se debe utilizar una estrategia de partición anual o mensual?

Para las tablas de Dataverse en las que el volumen de datos es alto en un año, es recomendable utilizar particiones mensuales. Hacerlo da como resultado archivos más pequeños y un mejor rendimiento. Además, si las filas de las tablas de Dataverse se actualizan con frecuencia, la división en varios archivos más pequeños ayuda a mejorar el rendimiento en el caso de escenarios de actualización in situ. Delta Lake solo está disponible con partición anual debido a su rendimiento superior en comparación con el formato CSV.

¿Qué es el modo de solo anexar y cuál es la diferencia entre este modo y el de actualización en el lugar?

En modo Solo anexar se anexan datos incrementales de las tablas de Dataverse a la partición de archivos correspondiente en el lago. Más información: Opciones de configuración avanzada en Azure Synapse Link

¿Cuándo utilizo el modo Solo anexar para obtener una vista histórica de los cambios?

El modo Solo anexar es la opción recomendada para escribir datos de tablas de Dataverse en el lago, especialmente cuando los volúmenes de datos son altos dentro de una partición y los datos cambian con frecuencia. Como decíamos, esta es una opción habitual y muy recomendada para clientes empresariales. Además, puede optar por utilizar este modo para escenarios en los que la intención es revisar incrementalmente los cambios de Dataverse y procesar los cambios para escenarios ETL, IA y ML. El modo Solo anexar proporciona un historial de cambios, en lugar del último cambio o una actualización en contexto, y permite varias series temporales de escenarios de IA, como la predicción o el análisis de pronóstico basados en valores históricos.

¿Cómo recupero la fila más actualizada de cada registro y excluyo las filas eliminadas cuando exporto datos en modo de solo anexar?

En el modo de solo agregar, debe identificar la última versión del registro con el mismo ID usando VersionNumber y SinkModifiedOn y después aplicar isDeleted=0 en la última versión.

¿Por qué veo números de versión duplicados cuando exporto datos usando el modo de solo anexar?

Para el modo de solo agregar, si Azure Synapse Link for Dataverse no recibe un reconocimiento del lago de datos de Azure de que los datos se han confirmado debido a algún motivo, como retrasos en la red, Azure Synapse Link volverá a intentarlo en esos escenarios y confirmará los datos nuevamente. El consumo posterior debe ser resistente a este escenario filtrando los datos mediante SinkModifiedOn.

¿Por qué veo diferencias en las columnas Sinkmodifiedon y Modifiedon?

Es de esperar. Modifiedon es la fecha y hora en que se modifica el registro Dataverse; Sinkmodifiedon es la fecha y hora en que se modifica el registro en el lago de datos.

¿Qué tablas de Dataverse no son compatibles con la exportación?

No se admitirá ninguna tabla que no tenga habilitado el seguimiento de cambios, además de las siguientes tablas del sistema:

  • Adjunto
  • Calendar
  • Calendarrule

Nota

Puede agregar la tabla de auditoría para exportar usando Azure Synapse Link for Dataverse. Sin embargo, la exportación de la tabla de auditoría solo se admite con perfiles Delta Lake.

Estoy usando la función Exportar al lago delta. ¿Puedo detener el trabajo Apache Spark o cambiar el tiempo de ejecución?

El trabajo de conversión de lago delta se activa cuando ha habido un cambio de datos en el intervalo de tiempo configurado. No hay ninguna opción para detener o pausar el grupo de Apache Spark. Sin embargo, puede modificar el intervalo de tiempo después de la creación del vínculo en Administrar tablas > Intervalo de tiempo avanzado.

Las columnas de búsqueda se componen de un identificador y un valor. Los valores de búsqueda solo cambian en la tabla raíz. Para reflejar mejor el valor de una columna de búsqueda, recomendamos unirse con la tabla raíz original para obtener el valor más reciente.

En Dataverse, las columnas calculadas mantienen solo la información de la fórmula y el valor real depende de la columna de la tabla base. Por lo tanto, las columnas calculadas solo se admiten cuando todas las columnas están ubicadas dentro de la misma tabla exportada.

¿Qué tablas de Dataverse usan solo anexar de forma predeterminada?

Todas las tablas que no tengan un campo createdOn se sincronizarán usando el modo Anexar solo de forma predeterminada. Esto incluye tablas de relaciones, y la tabla ActivityParty.

¿Por qué veo el mensaje de error: No se puede enumerar el contenido del directorio en la ruta?

  • Los datos de Dataverse se guardan en un contenedor de almacenamiento conectado. Necesita la función "Storage Blob Data colaborador" en la cuenta de almacenamiento vinculada para realizar operaciones de lectura y consulta a través de Synapse Workspace.
  • Si elige exportar datos con el formato Delta Lake, su archivo CSV se limpia después de la conversión de Delta Lake. Debe consultar datos con tablas no_particionadas a través de Synapse Workspace.

¿Por qué veo el mensaje de error: no se puede realizar la carga masiva porque el archivo está incompleto o no se puede leer (solo archivo CSV)?

Los datos de Dataverse pueden cambiar continuamente mediante la creación, actualización y eliminación de transacciones. Este error es causado por el cambio del archivo subyacente cuando está leyendo datos de él. Por lo tanto, para las tablas con cambios continuos, debe cambiar su canalización de consumo para usar datos de instantáneas (tablas particionadas) para consumir. Más información: Solucionar problemas del grupo de SQL sin servidor

Azure Synapse Link for Dataverse está diseñado con fines analíticos. Recomendamos a los clientes utilizar la retención a largo plazo con fines de archivo. Más información: Información general sobre la retención de datos a largo plazo de Dataverse

¿Por qué no veo ningún cambio de datos en el lago de datos cuando se eliminan registros en Dataverse?

Para cualquier llamada SQL directa para eliminar un registro, el servicio Azure Synapse Link for Dataverse no se activa porque no se llama a BPO.Delete. Para ver una función de muestra, vaya a Cómo limpiar el acceso heredado.