Cargar datos desde un archivo CVS a una base de datos de Azure SQL mediante Azure Data Factory

Aquí tenemos 2 archivos csv en el contenedor BLOB, y queremos cargar datos desde el archivo csv a las respectivas tablas de la base de datos (p. ej., los datos del archivo del producto deben cargarse en la tabla del producto).

Hay algunos requisitos previos: debe tener una suscripción a Azure. Debe haber un contenedor BLOB en la cuenta de almacenamiento que tiene el archivo de origen. Ya debería haber configurado un servidor de base de datos SQL de Azure. y debe tener los detalles de SQL Server, la identificación de usuario, la contraseña y debe tener acceso a él.

El primer paso es leer los nombres de los archivos del contenedor de blobs. Vamos a utilizar la actividad GetFileName en ADF. Cree una nueva canalización y arrastre la actividad GetFileName.

En la pestaña del conjunto de datos, seleccione el conjunto de datos para BLOB en el menú desplegable.

Aquí tenemos una opción para el argumento a continuación, que podemos configurar en función de los metadatos de datos que queremos leer.

Aquí seleccionaremos Elementos secundarios del menú desplegable. Haga clic en validar, una vez que tenga éxito, haga clic en depurar, le mostrará el nombre de los archivos presentes en el contenedor de origen.

Ahora iteraremos con los archivos presentes en las carpetas de origen (contenedor BLOB). Para lograrlo, usaremos la actividad ForEach. Arrástrelo a la canalización y conecte la salida de la actividad Obtener metadatos con él.

Ahora haga clic dentro de Para cada actividad y vaya a la pestaña Configuración. En el campo Elemento, haga clic en agregar contenido dinámico y agregue la siguiente expresión y haga clic en finalizar.

Aquí estamos pasando el nombre de archivo de la actividad de obtención de metadatos.

Vaya a la pestaña de actividad y agregue una nueva actividad. Te llevará al interior del bucle. Arrastre la actividad de condición aquí.

Comprobaremos el nombre del archivo en este paso. Vaya a la pestaña de actividades, haga clic en el campo Expresión para agregar contenido dinámico y agregue la siguiente expresión y haga clic en finalizar.

Aquí estamos pasando una expresión para verificar si el nombre del archivo comienza con Producto.

Ahora necesitamos cargar los datos del archivo del producto a la tabla del producto. Haga clic en el signo de lápiz de la actividad VERDADERA. Te llevará dentro de la actividad.

Arrastre la actividad de Copiar dentro de la actividad de condición If.

Haga clic en la pestaña de origen, seleccione el conjunto de datos del menú desplegable que apunta a la carpeta de origen en el contenedor BLOB. Seleccione un comodín en la ruta del tipo de archivo.

Ahora haga clic en agregar contenido dinámico en el nombre de archivo comodín y proporcione la siguiente expresión.

Recogerá el archivo que comienza con Producto.

Vaya a la pestaña de sincronización y seleccione el conjunto de datos del menú desplegable (debe estar parametrizado).

Una vez que seleccione, le pedirá el nombre del esquema y el nombre de la tabla.

Ahora vaya a la pestaña de mapeo y haga clic en importar esquema. Importará la columna tanto del origen como del destino.

Verifique el mapeo y haga clic en validar y depurarlo

Una vez que tenga éxito. Valide su canalización y publíquela.