Preprocesar datos con un procedimiento almacenado antes de cargarlos en Lakehouse

En este tutorial, se muestra cómo usar una actividad de script de canalización para ejecutar un procedimiento almacenado para crear una tabla y preprocesar los datos en una Data Warehouse de Synapse. Después, cargamos la tabla preprocesada en Lakehouse.

Importante

Microsoft Fabric se encuentra actualmente en versión preliminar. Esta información está relacionada con un producto en versión preliminar que puede modificarse considerablemente antes de su lanzamiento. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información que se ofrece aquí. Consulte Azure Data Factory documentación del servicio en Azure.

Requisitos previos

  • Un área de trabajo habilitada para Microsoft Fabric. Si aún no tiene una, consulte el artículo Creación de un área de trabajo.

  • Prepare un procedimiento almacenado en el Azure Synapse Data Warehouse. Cree el siguiente procedimiento almacenado de antemano:

    CREATE PROCEDURE spM_add_names
    AS
    --Create initial table
    IF EXISTS (SELECT * FROM sys.objects
    WHERE object_id = OBJECT_ID(N'[dbo].[names]') AND TYPE IN (N'U'))
    BEGIN
    DROP TABLE names
    END;
    
    CREATE TABLE names
    (id INT,fullname VARCHAR(50));
    
    --Populate data
    INSERT INTO names VALUES (1,'John Smith');
    INSERT INTO names VALUES (2,'James Dean');
    
    --Alter table for new columns
    ALTER TABLE names
    ADD first_name VARCHAR(50) NULL;
    
    ALTER TABLE names
    ADD last_name VARCHAR(50) NULL;
    
    --Update table
    UPDATE names
    SET first_name = SUBSTRING(fullname, 1, CHARINDEX(' ', fullname)-1);
    
    UPDATE names
    SET last_name = SUBSTRING(fullname, CHARINDEX(' ', fullname)+1, LEN(fullname)-CHARINDEX(' ', fullname));
    
    --View Result
    SELECT * FROM names;
    

    Captura de pantalla que muestra los resultados de ejecutar el procedimiento almacenado para generar una tabla de ejemplo.

Creación de una actividad de script de canalización para ejecutar el procedimiento almacenado

En esta sección, se usa una actividad Script para ejecutar el procedimiento almacenado creado en los requisitos previos.

  1. Elija Actividad de script y, a continuación, seleccione Nuevo para conectarse a la Azure Synapse Data Warehouse.

    Captura de pantalla que muestra la interfaz de canalización para crear una nueva actividad de script y conectarse a la Azure Synapse Data Warehouse.

  2. Seleccione Azure Synapse Analytics y, a continuación, Continuar.

    Captura de pantalla que muestra el cuadro de diálogo Nueva conexión con Azure Synapse Analytics seleccionado.

  3. Proporcione los campos Servidor, Base de datos y Nombre de usuario y Contraseña para autenticación básica y escriba SynapseConnection como nombre de conexión. A continuación, seleccione Crear para crear la nueva conexión.

    Captura de pantalla que muestra el cuadro de diálogo Crear nueva conexión.

  4. ExeC de entrada spM_add_names para ejecutar el procedimiento almacenado. Crea una nueva tabla dbo.name y preprocesa los datos con una transformación sencilla para cambiar el campo fullname en dos campos, first_name y last_name.

    Captura de pantalla que muestra la pestaña de configuración de la actividad Script configurada para ejecutar el procedimiento almacenado spM_add_names.

Uso de una actividad de canalización para cargar datos de tabla preprocesados en Lakehouse

  1. Seleccione Copiar datos y, a continuación, seleccione Usar asistente para copia.

    Captura de pantalla que muestra el botón Usar asistente para copia en Copiar datos.

  2. Seleccione Azure Synapse Analytics para el origen de datos y, a continuación, seleccione Siguiente.

    Captura de pantalla que muestra la página de selección copiar origen de datos del asistente con Azure Synapse Analytics seleccionado.

  3. Elija la conexión existente synapseConnection que creó anteriormente.

    Captura de pantalla que muestra la selección de SynapseConnection creada anteriormente en la página Elegir origen de datos del Asistente para copia.

  4. Elija la tabla dbo.names que creó y preprocesó el procedimiento almacenado. Luego, seleccione Siguiente.

    Captura de pantalla que muestra la selección de la tabla dbo.names creada y preprocesada por el procedimiento almacenado en los pasos anteriores.

  5. Seleccione Lakehouse en la pestaña Área de trabajo como destino y, a continuación, seleccione Siguiente de nuevo.

    Captura de pantalla que muestra la selección de Lakehouse para el destino de copia en el Asistente para copia.

  6. Elija una instancia existente o cree una nueva instancia de Lakehouse y, a continuación, seleccione Siguiente.

    Captura de pantalla que muestra la selección de un destino de Lakehouse en el Asistente para copia.

  7. Escriba un nombre de tabla de destino para los datos que se van a copiar en para el destino de Lakehouse y seleccione Siguiente.

    Captura de pantalla que muestra el nombre de la tabla de destino que se va a usar en el destino de Lakehouse.

  8. Revise el resumen en la página final del Asistente para copia y, a continuación, seleccione Aceptar.

    Captura de pantalla que muestra la página de resumen del Asistente para copia con detalles de las conexiones configuradas.

  9. Después de seleccionar Aceptar, el nuevo actividad de copia se agregará al lienzo de la canalización.

    Captura de pantalla que muestra el lienzo de la canalización con el actividad de copia agregado.

Ejecución de las dos actividades de canalización para cargar los datos

  1. Conecte las actividades Script y Copy data by On success (Al realizar correctamente ) desde la actividad Script.

    Captura de pantalla que muestra la conexión de las dos actividades en caso de éxito de la actividad Script.

  2. Seleccione Ejecutar y, a continuación, Guardar y ejecutar para ejecutar las dos actividades de la canalización.

    Captura de pantalla que muestra el botón Ejecutar de canalización.

    Captura de pantalla que muestra el botón Guardar y ejecutar de la canalización.

  3. Una vez que la canalización se ejecuta correctamente, puede ver los detalles para obtener más información.

    Captura de pantalla que muestra el botón Ver detalles de ejecución de canalización.

    Captura de pantalla que muestra los detalles de ejecución de la canalización.

  4. Cambie al área de trabajo y seleccione Lakehouse para comprobar los resultados.

    Captura de pantalla que muestra el área de trabajo con el destino de Lakehouse resaltado.

  5. Seleccione la tabla SynapseNamesTable para ver el dat cargado en Lakehouse.

    Captura de pantalla que muestra los resultados en SynapseNamesTable en Lakehouse.

Pasos siguientes

En este ejemplo se muestra cómo preprocesar datos con un procedimiento almacenado antes de cargar los resultados en Lakehouse. Ha aprendido a:

  • Cree una canalización de datos con una actividad script para ejecutar un procedimiento almacenado.
  • Use una actividad de canalización para cargar los datos de tabla preprocesados en Lakehouse.
  • Ejecute las actividades de canalización para cargar los datos.

A continuación, avance para obtener más información sobre la supervisión de las ejecuciones de canalización.