Captura de datos modificados en Azure Data Factory y Azure Synapse Analytics
SE APLICA A: Azure Data Factory Azure Synapse Analytics
Sugerencia
Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. ¡Obtenga más información sobre cómo iniciar una nueva evaluación gratuita!
En este artículo se describe la captura de datos modificados (CDC) en Azure Data Factory.
Para obtener más información, consulte Información general de Azure Data Factory o Información general de Azure Synapse.
Introducción
Al realizar la integración de datos y los procesos de ETL en la nube, los trabajos pueden lograr un mejor rendimiento y ser más eficaces al solo leer los datos de origen que han cambiado desde la última vez que se ejecutó la canalización, en lugar de consultar siempre un conjunto de datos completo en cada ejecución. ADF proporciona varias maneras diferentes de obtener fácilmente datos diferenciales solo de la última ejecución.
Recurso de factoría de captura de datos modificados
La manera más fácil y rápida de empezar a usar la factoría de datos con CDC es mediante el recurso de captura de datos modificados del nivel de factoría. En el diseñador de canalizaciones principal, haga clic en Nuevo en Recursos de factoría para crear una captura de datos modificados. El recurso de factoría de CDC le proporciona una experiencia de tutorial de configuración, donde puede seleccionar los orígenes y destinos, aplicar transformaciones opcionales y, luego, hacer clic en Iniciar para comenzar la captura de datos. Con el recurso de CDC, no es necesario diseñar canalizaciones ni actividades de flujo de datos. También se le facturan solo cuatro núcleos de flujos de datos de uso general mientras se procesan los datos. Puede establecer una latencia favorita que ADF usará para activarse y buscar datos modificados. Esta es la única vez que se le facturará. El recurso de CDC de nivel superior es también el método de ADF para ejecutar los procesos continuamente. Las canalizaciones de ADF solo son por lotes, pero el recurso de CDC se puede ejecutar continuamente.
Captura nativa de datos modificados en el flujo de datos de asignación
Los datos modificados, incluidas las filas insertadas, actualizadas y eliminadas, se pueden detectar y extraer automáticamente mediante el flujo de datos de asignación de ADF de las bases de datos de origen. No se requieren columnas de marca de tiempo ni identificador para identificar los cambios, ya que usa la tecnología nativa de captura de datos modificados en las bases de datos. Al encadenar una transformación de origen y una referencia de transformación de receptor a un conjunto de datos de base de datos en un flujo de datos de asignación, puede ver que los cambios ocurridos en la base de datos de origen se aplican automáticamente a la base de datos de destino para que pueda sincronizar fácilmente los datos entre dos tablas. También puede agregar cualquier transformación entremedias para que cualquier lógica de negocios procese los datos delta. Al definir el destino de los datos del receptor, puede establecer operaciones de inserción, actualización, upsert y eliminación en el receptor sin necesidad de una transformación Alter Row porque ADF puede detectar automáticamente los creadores de filas.
Conectores compatibles
- SAP CDC
- Azure SQL Database
- SQL Server
- Instancia administrada de Azure SQL
- Azure Cosmos DB (API de SQL)
- Almacén analítico de Azure Cosmos DB
- Snowflake
Extracción incremental automática en el flujo de datos de asignación
El flujo de datos de asignación de ADF de los almacenes de origen puede detectar y extraer automáticamente las filas recién actualizadas o los archivos actualizados. Cuando desee obtener datos diferenciales de las bases de datos, se requiere la columna incremental para identificar los cambios. Si desea cargar nuevos archivos o archivos actualizados solo desde un almacén de almacenamiento, el flujo de datos de asignación de ADF solo funciona a través de la hora de última modificación de los archivos.
Conectores compatibles
- Azure Blob Storage
- ADLS Gen2
- ADLS Gen1
- Azure SQL Database
- SQL Server
- Instancia administrada de Azure SQL
- Azure Database for MySQL
- Azure Database para PostgreSQL
- Common Data Model
Extracción de datos diferenciales administrados por el cliente en la canalización
Siempre puede crear su propia canalización de extracción de datos delta para todos los almacenes de datos compatibles con ADF, incluido el uso de la actividad de búsqueda para obtener el valor de marca de agua almacenado en una tabla de control externo, la actividad de copia o la actividad de flujo de datos de asignación para consultar los datos delta en la columna de marca de tiempo o identificador, y la actividad de SP para volver a escribir el nuevo valor de marca de agua en la tabla de control externa para la siguiente ejecución. Cuando desee cargar nuevos archivos solo desde un almacén de almacenamiento, puede eliminar archivos cada vez que se hayan movido correctamente al destino, o aprovechar la hora en que se particionó la carpeta o los nombres de archivo con particiones o la hora de la última modificación para identificar los nuevos archivos.
Prácticas recomendadas
Captura de datos modificados de bases de datos
- La captura nativa de datos modificados siempre se recomienda como la manera más sencilla de obtener datos modificados. También conlleva mucha menos carga en la base de datos de origen cuando ADF extrae los datos modificados para su posterior procesamiento.
- Si los almacenes de bases de datos no forman parte de la lista de conectores de ADF con compatibilidad nativa con la captura de datos modificados nativa, se recomienda comprobar la opción de extracción incremental automática en la que solo necesita introducir columna incremental para capturar los cambios. ADF se encargará del resto, incluida la creación de una consulta dinámica para la carga diferencial y la administración del punto de control para cada ejecución de actividad.
- La extracción de datos diferenciales administrada por el cliente en la canalización cubre todas las bases de datos compatibles con ADF y le ofrece la flexibilidad de controlar todo por sí mismo.
Captura de archivos modificados en almacenamientos basados en archivos
- Si desea cargar datos desde Azure Blob Storage, Azure Data Lake Storage Gen2 o Azure Data Lake Storage Gen1, el flujo de datos de asignación le proporciona la oportunidad de obtener archivos nuevos o actualizados solo con un solo clic. Es la manera más sencilla y recomendada de lograr la carga diferencial de estos almacenamientos basados en archivos en el flujo de datos de asignación.
- Puede obtener más procedimientos recomendados.
Punto de control
Al habilitar la captura de datos modificados nativa o las opciones de extracción incremental automática en el flujo de datos de asignación de ADF, ADF le ayuda a administrar el punto de control para asegurarse de que cada ejecución de actividad solo leerá automáticamente los datos de origen que han cambiado desde la última vez que se ejecutó la canalización. De forma predeterminada, el punto de control se acopla con el nombre de la canalización y la actividad. Si cambia el nombre de la canalización o de la actividad, el punto de control se restablecerá, por lo que tendría que empezar desde el principio u obtener los cambios que se realicen a partir de ese momento en la siguiente ejecución. Si desea cambiar el nombre de la canalización o el nombre de la actividad, pero mantener el punto de control para obtener automáticamente los datos modificados de la última ejecución, use su propia clave de punto de control en la actividad del flujo de datos. La regla de nomenclatura de su propia clave de punto de control es la misma que la de los servicios vinculados, los conjuntos de datos, las canalizaciones y los flujos de datos.
Cuando se depura la canalización, esta característica funciona igual. El punto de control se restablecerá al actualizar el explorador durante la ejecución de depuración. Cuando esté conforme con el resultado de la canalización obtenida a partir de la ejecución de depuración, podrá publicar y desencadenar la canalización. En el momento en que desencadene por primera vez la canalización publicada, la canalización se reiniciará automáticamente desde el principio o se obtendrán los cambios a partir de ese momento.
Siempre puede volver a ejecutar la canalización en la sección de supervisión. Si lo hace, siempre se capturarán los datos modificados a partir del punto de control anterior de la ejecución de la canalización seleccionada.
Tutoriales
A continuación se muestran los tutoriales para iniciar la captura de datos modificados en Azure Data Factory y Azure Synapse Analytics.
- Tutorial CDC de SAP en ADF
- Tutoriales sobre la copia incremental de datos de un almacén de datos de origen en un almacén de datos de destino
Plantillas
A continuación se muestran plantillas para usar la captura de datos modificados en Azure Data Factory y Azure Synapse Analytics.