Automatización de cargue de archivos en Data lake GEN 2 desde SharePoint con Logic Apps

Publicado por

En las organizaciones es común que haya una persona que toma información desde una fuente y la deposita en un almacen de datos para que otras personas puedan acceder a ella, a menudo esta es una operación que puede ocurrir varias veces al dia como puede tomar meses. A este tipo de proceso se le puede denominar como “Flujo de trabajo”. Ahora bien, un flujo de trabajo es una secuencia de procesos automatizable que conllevan a un resultado especifico. Estos pueden ser procesos de trabajo que se ejecutan mediante “desencadenadores” con una frecuencia de tiempo de segundos o incluso meses.

El servicio de Azure Logic Apps es una plataforma basada en la nube que permite crear, ejecutar y administrar flujos de trabajo automatizados. Para poder crear el flujo de trabajo mediante la aplicación lógica se debe elegir el tipo de recurso en función de un escenario, la funcionalidad que necesita, y el entorno donde se quiere ejecutar la solución.

Una de las ventajas que ofrece este servicio es que en él se encuentran integrados conectores API administrados por Microsoft y operaciones lógicas. Los anteriores, permiten realizar conexiones e integrar servicios y datos de forma rápida y sencilla. Sin embargo, no hace falta conocer todos los recursos que ofrece la plataforma para implementar una solución, basta con diseñar de manera lógica una posible solución de negocio.

De acuerdo con el sitio oficial de Microsoft, estas son tan solo algunas soluciones empresariales que se pueden llegar a automatizar con el servicio:

  • Traslado de archivos cargados de un servidor SFTP o FTP a Azure Storage.
  • Supervisión de tuis, análisis de opiniones y creación de alertas o tareas para los elementos que se deben revisar.
  • Programación y envio de notificaciones por correo electrónico mediante office 365 cuando ocurre un evento especifico https://docs.microsoft.com/es-es/azure/logic-apps/logic-apps-overview.

A continuación se explicará cómo mediante el uso de Azure Logic Apps se puede automatizar el cargue de archivos desde una fuente SharePoint a un lago de datos, en este caso un Azure Data Lake Storage Gen2.

¡AVISO IMPORTANTE!

para poder realizar la conexión, necesitarás tener un espacio en SharePoint donde almacenarás los archivos fuente, y un Azure Data Lake Gen 2, si aun no sabes como configurar este ultimo puedes seguir los pasos aquí (https://blog.iwco.co/2021/11/16/como-crear-un-data-lake-generacion-2-en-azure/)

Paso 1

En el campo de busquedas del Portal de Azure (https://portal.azure.com/) debes buscar “Logic App”

Selecciona la opción de “Crear”

Paso 2

Para aprovisionar el servicio de manera rapida, llena los campos encerrados por el cuadrado rojo, con el grupo de recursos de Azure de tu preferencia, el nombre que deseas para tu Logic App y la región donde se va a implementar.

Paso 3

Una vez hayas implementado el servicio de Logic App, debes dirigirte al apartado izquierdo y seleccionar la opción de “Diseñador de aplicación lógica”. Esta opción te permitirá crear el flujo de datos.

Paso 4

Seleccionar la opción de “Blank Logic App”

Paso 5

Selecciona la opcion de SharePoint

Selecciona la opción de “Cuando se crea o se modifica un archivo (solo propiedades) “. Esta operación permitirá que el flujo se desencadene cada vez que haya un nuevo archivo en tu SharePoint o se modifique un archivo pre-existente.

Paso 6

Da clic sobre “Sign in” e ingresa las credenciales del SharePoint de donde vas a obtener los archivos. Una vez hayas ingresado las credenciales se creará automáticamente la API para SharePoint y te permitirá acceder a los diferentes espacios de trabajo.

Fíjate que te va a permitir seleccionar la dirección y la biblioteca en SharePoint donde se encuentran alojados los archivos. Adicionalmente puedes configurar la frecuencia con la que quieres automatizar el flujo. Para este ejemplo, el usuario final desea acceder a los datos a diario, por tanto se configura a diario la ejecución.

Paso 7

Selecciona el simbolo de “+” de la parte inferior del flujo y da clic sobre la opción de “SharePoint”, esto te mostrará el catalogo de operaciones sobre tu SharePoint, selecciona la de “Get file Content”. Esta opción permitirá que puedas obtener los archivos que se encuentran guardados en el sitio de SharePoint.

Paso 8

Sobre el campo de “File Identifier” busca en el menú la operación de identificador, esto te permitirá seleccionar los archivos alojados de SharePoint.

Paso 9

Ahora es el momento de extraer los datos y almacenarlos en el Azure Data Lake Gen 2, para esto vas a agregar una nueva casilla en el flujo dando clic sobre el icono “+” que se encuentra en a parte inferior de la caja del paso 8.

Paso 10

Selecciona la opción de “Azure Blob Storage” y a continuación, da clic sobre la pestaña de “Create Blov (V2)”. Esta ultima te permitirá conectarte desde Logic Apps al data lake.

Paso 11

se mostrarán diferentes campos en donde vas a poder escoger el modo con el que ingresas a tu data lake, para este caso vas a seleccionar “Azure AD Integrated” y ingresarás las credenciales con las cuales accedes al portal de Azure (deben ser las mismas donde se encuentra alojado el datalake). El proceso anterior, creará automáticamente la Api connection con Azure data lake Gen 2.

Paso 12

Selecciona el nombre de la cuenta de almacenamiento y la ruta del data lake donde quieres almacenar los archivos que extraes de SharePoint. Seguido a esto, tendrás que dar un nombre al archivo que estas almacenando, para ello selecciona la opción de “Nombre de archivo con extensión” y a continuación vas a incluir el contenido del blob, para ello selecciona la operación de “Contenido del archivo”.

Paso 13

Por ultimo, guarda el flujo que acabas de crear dando clic en “Save”

Paso 14

Finalmente, una vez hayas guardado el Logic App deberás ejecutar el desencadenador, esta opción permitirá que el proceso se realice de manera automática y recurrente con la frecuencia que se ha definido anteriormente.

Espero te haya gustado este blog, si tienes alguna duda o sugerencia podrás dejarla en los comentarios. Hasta la próxima!!!

Deja un comentario

Tu dirección de correo electrónico no será publicada.