Conexión a tablas delta en Azure Data Lake Storage

Conéctese a los datos de las tablas Delta y conéctelos a Dynamics 365 Customer Insights - Data.

Razones clave para conectarse a datos almacenados en formato Delta:

  • Importe directamente datos formateados en Delta para ahorrar tiempo y esfuerzo.
  • Elimine los costos de computación y almacenamiento asociados con la transformación y el almacenamiento de una copia de los datos de su almacén de lago de datos.
  • Mejore automáticamente la fiabilidad de la ingesta de datos en Customer Insights - Data proporcionada por el control de versiones Delta.

Características y versiones de Databricks compatibles

Customer Insights - Data soporta tablas Delta con un minReaderVersion valor de 3 o anterior, sujeto a la lista de características soportadas. No se admiten las tablas que usan funciones de lector no soportadas. Si la conexión del origen de datos intenta leer una tabla con una característica no admitida, aparece el siguiente error: "No se pueden leer tablas delta (A, B, C, D). Se encontraron versiones de lector delta no admitidas (X, Y, Y, X).

Todas las funciones que requieren una minReaderVersion de 1 o 2 están soportadas.

La siguiente tabla muestra las características de Databricks soportadas y no soportadas que requieren un minReaderVersion de 3.

Características soportadas Características no admitidas
Funcionalidad básica TimestampNTZ
Cambio de fuente de distribución de datos Ensanchamiento de tipos
Restricciones de verificación Variant
Asignación de columnas
Vectores de eliminación
Generar columnas
Columnas de identidad
Agrupación en clústeres líquidos
Seguimiento de filas
Características de tabla: lectura
Características de la tabla: escritura
UniForm

Más información: ¿Cómo gestiona Databricks la compatibilidad con las características de Delta Lake?

Tip

Si usa un entorno de ejecución de Databricks reciente y necesita compatibilidad con Dynamics 365 Customer Insights, puede reducir la versión del protocolo de tabla Delta y deshabilitar características específicas. Haz este cambio a nivel de espacio de trabajo en Databricks para aplicarlo por defecto a cualquier tabla recién creada. También puedes eliminar manualmente las características de las tablas existentes si es necesario.

Captura de pantalla de la opción de Auto-Habilitar Vectores de Eliminación.

Tras aplicar la configuración y volver a ejecutar el cuaderno, la tabla vuelve a un protocolo lector/escritor inferior: captura de pantalla de un protocolo lector/escritor inferior.

Este cambio permite a Customer Insights leer y gestionar correctamente la tabla: captura de pantalla de lectura e ingesta exitosas.

Más información: Compatibilidad y protocolos de características de Delta Lake: protocolo más bajo posible.

Prerequisites

  • El almacenamiento de Azure Data Lake debe estar en el mismo tenant y en la misma región de Azure que Customer Insights - Data.

  • Para conectarse al almacenamiento protegido por firewalls, Set up Azure private links.

  • La entidad de seguridad de Customer Insights - Data debe tener permisos de Colaborador de datos de Storage Blob para acceder a la cuenta de almacenamiento. Para más información, consulte Otorgar permisos a la entidad de servicio para acceder a la cuenta de almacenamiento.

  • El usuario que configura o actualiza el origen de datos necesita al menos permisos de lector de datos de Storage Blob en la cuenta de Azure Data Lake Storage.

  • Los datos almacenados en servicios en línea pueden almacenarse en una ubicación diferente a la de dónde se procesan o almacenan los datos. Al importar o conectarse a los datos almacenados en servicios en línea, acepta que los datos se pueden transferir.  Obtén más información en el Centro de confianza de Microsoft.

  • Customer Insights - Data admite tablas Delta con una versión minReaderVersion 3 o anterior, según la compatibilidad de características indicada. Más información: Características de Databricks compatibles.

  • Las tablas Delta deben estar en una carpeta en el contenedor de almacenamiento y no pueden estar en el directorio raíz del contenedor.

  • Las tablas Delta no pueden estar en carpetas anidadas.

  • Cada tabla Delta puede estar en su propia carpeta en la carpeta raíz de la tabla Delta. Por ejemplo:

    storageaccountcontainer/
        DeltaDataRoot/
           ADeltaTable/
                 _delta_log/
                     0000.json
                     0001.json
                 part-0001-snappy.parquet
                 part-0002-snappy.parquet
           BDeltaTable/
                 _delta_log/
                     0000.json
                     0001.json
                 part-0001-snappy.parquet
                 part-0002-snappy.parquet
    
  • Customer Insights - Data: los datos se basan en la propiedad de versión del historial de la tabla Delta para identificar los últimos cambios para el procesamiento incremental.

Importante

No se pueden agregar tablas a un origen de datos de Delta Lake existente después de guardarlo. Para añadir más tablas, crea una nueva fuente de datos. Planee cuidadosamente la selección de la tabla antes de guardarla.

Conectar a datos Delta desde Azure Data Lake Storage

Los nombres de conexión de datos, las rutas de acceso de datos, como carpetas dentro de un contenedor, y los nombres de tablas deben usar nombres que comiencen con una letra. Los nombres solo pueden contener letras, números y el carácter de subrayado (_). No se admiten caracteres especiales.

  1. Vaya a Datos>Orígenes de datos.

  2. Seleccione Agregar un origen de datos.

  3. Seleccione tablas Delta de Azure Data Lake.

    Captura de pantalla del cuadro de diálogo para introducir los detalles de la conexión de Delta Lake.

  4. Escriba un Nombre de origen de datos y una Descripción opcional. Los procesos posteriores hacen referencia al nombre y no puedes cambiarlo después de crear la fuente de datos.

  5. Elija una de las siguientes opciones para Conecte su almacenamiento usando.

    • Suscripción de Azure: seleccione la suscripción y luego el grupo de recursos y la cuenta de almacenamiento.
    • recurso de Azure: escriba el Id. del recurso.
  6. Elija el nombre del Contenedor que tiene la carpeta de sus datos.

  7. Opcionalmente, si desea ingerir datos de una cuenta de almacenamiento a través de un Azure Private Link, seleccione Enable Private Link. Para obtener más información, consulte Private Links.

  8. Navegue hasta la carpeta que contiene los datos en tablas Delta y selecciónela. Después, seleccione Siguiente. Aparece una lista de tablas disponibles.

  9. Seleccione las tablas analíticas que desee incluir.

  10. Para tablas seleccionadas donde no se define una clave principal, Obligatorio aparece debajo de Clave primaria. Para cada una de estas tablas:

    1. Seleccione Obligatorio. El panel Editar tabla aparece.
    2. Elija la Clave principal. La clave principal es un atributo exclusivo de la tabla. Para que un atributo pueda ser una clave principal válida, no debe incluir valores duplicados, no deben faltar valores ni debe haber valores nulos. Los atributos de tipo de datos de cadena, entero y GUID se admiten como claves principales.
    3. Seleccione Cerrar para guardar y cerrar el panel.

    Captura de pantalla del cuadro de diálogo que muestra Obligatorio para la clave primaria.

  11. Para habilitar la generación de perfiles de datos en cualquiera de las columnas, seleccione el número de columnas de la tabla. Aparece la página Administrar atributos.

    Captura de pantalla del cuadro de diálogo para seleccionar perfilado de datos.

    1. Seleccione Perfiles de datos para toda la tabla o para columnas específicas. De forma predeterminada, ninguna tabla está habilitada para la creación de perfiles de datos.
    2. Seleccione Listo.
  12. Haga clic en Guardar. La página Orígenes de datos se abre y muestra el nuevo origen de datos en estado Actualizando.

    Tip

    Selecciona un estado para abrir el panel de detalles de progreso , donde puedes ver el progreso de la tarea o seleccionar Cancelar trabajo para detener el trabajo.

La carga de datos puede llevar tiempo. Después de una actualización realizada correctamente, puede revisar los datos importados en la página Tablas.

Una vez que guardas la fuente de datos, no puedes volver atrás y añadir más tablas. Para agregar otras tablas, cree otro origen de datos para incluir las tablas en Customer Insights - Data.

Administrar cambios de esquema

Si añades o eliminas una columna del esquema de una fuente de datos de una carpeta Delta, el sistema realiza una actualización completa de los datos. Una actualización completa tarda más en procesar todos los datos que actualizaciones incrementales.

Si cambias el esquema de los datos fuente tras crear la conexión a la fuente de datos, aparece un error de desajuste o desajuste de datos que te pide actualizar la conexión de la fuente de datos. El error "Las columnas de los datos de origen han cambiado" se muestra en los detalles de la tarea. Los cambios de esquema incluyen actualizaciones de columnas, nombres de columna y tipos de datos de columna.

Actualizar un origen de datos cuando cambia el esquema

  1. Vaya a Datos>Orígenes de datos. Seleccione Editar junto al origen de datos con los errores. Después, seleccione Siguiente.

  2. Seleccione la tabla que tiene errores.

    Captura de pantalla de la página Administrar atributos que muestra el mensaje de generación automática de atributos

  3. Seleccione Generar automáticamente los atributos y confirme.

  4. Una vez completada la generación de atributos, seleccione Listo.

  5. Seleccione Incluir en la tabla y, a continuación, seleccione Guardar para aplicar los cambios y volver a la página Orígenes de datos .

Adición de una columna para la unificación

Cuando añades una columna a la fuente de datos, la información se añade automáticamente a los datos en Customer Insights - Data una vez que se produce una actualización. Si la unificación ya está configurada para la tabla, debes añadir la nueva columna al proceso de unificación.

  1. Desde el paso Datos de los clientes, seleccione Seleccionar tablas y columnas y seleccione la nueva columna.

  2. En el paso Vista de datos unificada, asegúrese de que la columna no esté excluida del perfil del cliente. Seleccione Excluido y vuelva a agregar la columna.

  3. En el paso Ejecutar actualizaciones del perfil unificado, seleccione Unificar perfiles y dependencias de clientes.

Cambiar o quitar una columna

Cuando eliminas una columna de una fuente de datos, el sistema comprueba dependencias en otros procesos. Si hay una dependencia en las columnas, el sistema detiene la actualización y proporciona un error que indica que debes eliminar dependencias. Estas dependencias se muestran en una notificación para ayudarle a localizarlas y eliminarlas.

Validar un cambio de esquema

Después de que origen de datos se actualice, vaya a la página Datos>Tablas. Seleccione la tabla para origen de datos y verifique el esquema.

Viaje en el tiempo y actualización de datos del lago Delta

El viaje en el tiempo de Delta Lake es la capacidad de consultar versiones de tablas basadas en una marca de tiempo o número de versión. Los cambios en las carpetas Delta se versionan, y Customer Insights - Data utiliza las versiones de estas carpetas para hacer un seguimiento de los datos que deben procesarse. En una actualización normal de la tabla delta, los datos se extraen de todas las versiones de la tabla de datos desde la última actualización. Siempre que todas las versiones estén presentes, Customer Insights - Data pueden procesar solo los elementos modificados y ofrecer resultados más rápidos. Más información sobre el viaje en el tiempo.

Por ejemplo, si Customer Insights – Data se sincronizó por última vez con la versión 23 de los datos de su carpeta Delta, espera encontrar la versión 23 y posiblemente versiones posteriores disponibles. Si las versiones de datos esperadas no están disponibles, la sincronización de datos falla y requiere una actualización manual de datos completos. La sincronización de datos puede fallar si los datos de su carpeta Delta se eliminaron y luego se volvieron a crear. O si Customer Insights - Data no se pudo conectar a sus carpetas Delta durante un período prolongado mientras avanzaban las versiones.

Para evitar la necesidad de una actualización completa de los datos, mantén un retraso razonable en el historial, como 15 días.

Ejecute manualmente una actualización completa de datos en una carpeta de tabla Delta

Una actualización completa toma todos los datos de una tabla en formato Delta y los recarga desde la versión cero (0) de la tabla Delta. Los cambios en el esquema de la carpeta Delta desencadenan una actualización completa automática. Para activar manualmente una actualización completa, realice los siguientes pasos.

  1. Vaya a Datos>Orígenes de datos.

  2. Seleccione el origen de datos tablas Delta de Azure Data Lake.

  3. Seleccione la tabla que desea actualizar. El panel Editar tabla aparece.

    Captura de pantalla del panel de Editar para seleccionar actualización completa única.

  4. Seleccione Ejecutar una actualización completa única.

  5. Seleccione Guardar para ejecutar la actualización. La página Orígenes de datos se abre y muestra el origen de datos en estado Actualizando, pero solo se actualiza la tabla seleccionada.

  6. Repita el proceso para otras tablas, si corresponde.

Error de sincronización de datos

La sincronización de datos puede fallar si los datos de su carpeta Delta se eliminaron y luego se volvieron a crear. O si Customer Insights - Data no se pudo conectar a sus carpetas Delta durante un período prolongado mientras avanzaban las versiones. Para minimizar el impacto cuando un fallo intermitente en la canalización de datos obliga a realizar una actualización completa, mantén un historial de datos razonablemente amplio.

Importante

Mantenga al menos 15 días del historial de versiones delta para evitar errores de sincronización. Asegúrese de que las propiedades de la tabla delta.logRetentionDuration y delta.deletedFileRetentionDuration estén establecidas en 15 días o más. La ejecución VACUUM con una configuración de retención agresiva es la causa más común de la expiración de la versión.

Comportamiento de Upsert (actualización incremental)

Customer Insights - Data admite actualizaciones incrementales de datos a través del recorrido en el tiempo de Delta Lake. Para que upserts funcione correctamente:

  • Los datos deben estar en formato Delta (no CSV ni Parquet).
  • La tabla Delta debe mantener un historial de versiones (se recomienda al menos 15 días).
  • Cada operación de upsert debe crear una nueva versión de Delta—sobrescribir los archivos directamente provoca una actualización completa en lugar de una actualización incremental.
  • La columna de clave principal debe estar presente y coherente entre versiones.

Problemas comunes:

  • Si sobrescribes archivos Delta en lugar de añadir versiones, Customer Insights - Data trata esto como un cambio de esquema y realiza una actualización completa.
  • Si faltan versiones de Delta (por ejemplo, por limpieza o VACUUM), realiza una actualización completa única desde la configuración de la fuente de datos.

Pasos siguientes