Compartir a través de


Programar trabajos de U-SQL mediante SQL Server Integration Services (SSIS)

En este documento, aprenderá a organizar y crear trabajos de U-SQL mediante SQL Server Integration Service (SSIS).

Importante

Azure Data Lake Analytics se retirará el 29 de febrero de 2024. Obtenga más información con este anuncio.

Para el análisis de datos, su organización puede usar Azure Synapse Analytics o Microsoft Fabric.

Prerrequisitos

Azure Feature Pack para Integration Services proporciona el de tareas de Azure Data Lake Analytics y el de Azure Data Lake Analytics Connection Manager que ayuda a conectarse al servicio Azure Data Lake Analytics. Para usar esta tarea, asegúrese de instalar:

Tarea de Azure Data Lake Analytics

La tarea Azure Data Lake Analytics permite a los usuarios enviar trabajos de U-SQL a la cuenta de Azure Data Lake Analytics.

Aprenda a configurar la tarea Azure Data Lake Analytics.

Tarea de Azure Data Lake Analytics en SSIS

Puede obtener el script U-SQL de diferentes lugares mediante funciones y tareas integradas de SSIS, en los escenarios siguientes se muestra cómo configurar los scripts de U-SQL para distintos casos de usuario.

Escenario 1: Uso de la llamada de script en línea tvfs y procedimientos almacenados

En el Editor de tareas de Azure Data Lake Analytics, configure SourceType como directInputy coloque las instrucciones U-SQL en USQLStatement.

Para facilitar el mantenimiento y la administración de código, coloque solo scripts U-SQL cortos como scripts en línea, por ejemplo, puede llamar a funciones con valores de tabla existentes y procedimientos almacenados en las bases de datos U-SQL.

Editar el script de U-SQL integrado en la tarea SSIS

Artículo relacionado: Paso de parámetros a procedimientos almacenados

Escenario 2: Uso de archivos U-SQL en Azure Data Lake Store

También puede usar archivos U-SQL en Azure Data Lake Store mediante tarea del sistema de archivos de Azure Data Lake Store en Azure Feature Pack. Este enfoque le permite usar los scripts almacenados en la nube.

Siga estos pasos para configurar la conexión entre la tarea del sistema de archivos de Azure Data Lake Store y la tarea Azure Data Lake Analytics.

Establecimiento del flujo de control de tareas

En la vista de diseño de paquetes SSIS, agregue una tarea del sistema de archivos de Azure Data Lake Store, un contenedor de bucles Foreach y una tarea Azure Data Lake Analytics en el contenedor de bucles Foreach. La tarea del Sistema de archivos de Azure Data Lake Store ayuda a descargar archivos U-SQL en tu cuenta de ADLS a una carpeta temporal. El contenedor de bucles Foreach y la tarea de Azure Data Lake Analytics facilitan el envío de cada archivo U-SQL bajo la carpeta temporal a la cuenta de Azure Data Lake Analytics como un trabajo de U-SQL.

Diagrama que muestra una tarea del sistema de archivos de Azure Data Lake Store que se agrega a un contenedor de bucles Foreach.

Configurar la tarea del sistema de archivos de Azure Data Lake Store

  1. Establezca la operación en CopyFromADLS.
  2. Configura AzureDataLakeConnection, obtenga más información sobre Administrador de Conexiones de Azure Data Lake Store.
  3. Establezca AzureDataLakeDirectory. Apunte a la carpeta que almacena los scripts de U-SQL. Utilice la ruta de acceso relativa a la carpeta raíz de la cuenta de Azure Data Lake Store.
  4. Establezca destino en una carpeta que almacena en caché los scripts de U-SQL descargados. Esta ruta de acceso de carpeta se usará en el contenedor de bucles Foreach para el envío de trabajos de U-SQL.

Configurar el sistema de archivos de Azure Data Lake Store

Obtenga más información sobre la tarea del sistema de archivos de Azure Data Lake Store.

Configurar contenedor de bucle Foreach

  1. En página de colección, establezca enumerador en enumerador de archivos Foreach.

  2. Establezca carpeta en configuración del enumerador grupo en la carpeta temporal que incluye los scripts U-SQL descargados.

  3. Establezca Archivos en la configuración del enumerador a *.usql para que el contenedor de ciclo solo encuentre los archivos que terminan con .usql.

    Captura de pantalla que muestra el Editor de bucles Foreach con la opción

  4. En la página de Asignaciones de Variables , agregue una variable definida por el usuario para obtener el nombre de archivo de cada archivo U-SQL. Establezca el índice en 0 para obtener el nombre de archivo. En este ejemplo, defina una variable denominada User::FileName. Esta variable se usará para obtener dinámicamente la conexión de archivos de script U-SQL y establecer el nombre del trabajo de U-SQL en la tarea de Azure Data Lake Analytics.

    Configurar el contenedor de bucles Foreach para obtener el nombre de archivo

Configura la tarea de Azure Data Lake Analytics

  1. Establezca SourceType en FileConnection.

  2. Establezca FileConnection en la conexión de archivos que apunta a los objetos de archivo devueltos desde el contenedor de bucles Foreach.

    Para crear esta conexión de archivo:

    1. Elija <Nueva conexión...> en la configuración FileConnection.

    2. Establezca Tipo de uso en Archivo existente, y establezca archivos de en la ruta de acceso de cualquier archivo existente.

      Captura de pantalla que muestra el Editor del Administrador de conexiones de archivos con

    3. En la vista Administradores de conexiones, haga clic con el botón derecho en la conexión de archivo creada y elija Propiedades.

    4. En la ventana Propiedades, expanda Expresionesy establezca ConnectionString en la variable definida en el Contenedor del Bucle Foreach, por ejemplo, @[User::FileName].

      Configurar de contenedor de bucles Foreach

  3. Establezca AzureDataLakeAnalyticsConnection en la cuenta de Azure Data Lake Analytics a la que desea enviar trabajos. Obtenga más información sobre el Administrador de Conexión de Azure Data Lake Analytics .

  4. Establezca otras configuraciones de trabajo. Más información.

  5. Usa Expresiones para establecer el nombre del trabajo de U-SQL de forma dinámica.

    1. En página Expresiones, agregue un nuevo par clave-valor de expresión para JobName.

    2. Establezca en la variable definida en el contenedor de bucle Foreach el valor de JobName, por ejemplo, @[User::FileName].

      Configurar expresión de SSIS para el nombre del trabajo de U-SQL

Escenario 3: Uso de archivos U-SQL en Azure Blob Storage

Puede usar archivos U-SQL en Azure Blob Storage mediante tarea de descarga de blobs de Azure en Azure Feature Pack. Este enfoque le permite usar los scripts en la nube.

Los pasos son similares con Escenario 2: Uso de archivos U-SQL en Azure Data Lake Store. Cambie la tarea de sistema de archivos de Azure Data Lake Store a la tarea de descarga de Azure Blob. Obtenga más información sobre la tarea de descarga de blobs de Azure.

El flujo de control es similar al siguiente:

Uso de archivos U-SQL en azure Data Lake Store

Escenario 4: Uso de archivos U-SQL en el equipo local

Además de usar archivos U-SQL almacenados en la nube, también puede usar archivos en el equipo local o los archivos implementados con los paquetes SSIS.

  1. Haga clic con el botón derecho en administrador de conexiones en el proyecto de SSIS y elija Nuevo administrador de conexiones.

  2. Seleccione Tipo de archivo y seleccione Agregar....

  3. Establezca Tipo de uso en Archivo existentey establezca el archivo de en el archivo del equipo local.

    Agregar conexión de archivo al archivo local

  4. Añadir Azure Data Lake Analytics Tarea y:

    1. Establezca SourceType de en FileConnection de.
    2. Establezca FileConnection en la conexión de archivos creada.
  5. Finalice otras configuraciones de Azure Data Lake Analytics Task.

Escenario 5: Uso de la instrucción U-SQL en la variable SSIS

En algunos casos, es posible que tenga que generar dinámicamente las instrucciones U-SQL. Puede usar variable de SSIS con expresión de SSIS y otras tareas de SSIS, como la tarea script, para ayudarle a generar la instrucción U-SQL de forma dinámica.

  1. Abra la ventana de herramientas de Variables a través del menú principal SSIS > Variables.

  2. Agregue una variable SSIS y establezca el valor directamente o use la expresión para generar el valor.

  3. Agregue la tarea Azure Data Lake Analytics y:

    1. Establezca SourceType en Variable.
    2. Asigna SourceVariable a la variable de SSIS que se acaba de crear.
  4. Finalice otras configuraciones para la tarea de Azure Data Lake Analytics.

Escenario 6:Paso de parámetros al script U-SQL

En algunos casos, es posible que desee establecer dinámicamente el valor de la variable U-SQL en el script U-SQL. La característica de asignación de parámetros en la tarea de Azure Data Lake Analytics ayuda con este escenario. Normalmente hay dos casos de usuario típicos:

  • Configure las variables de ruta de acceso de los archivos de entrada y salida de manera dinámica, basándose en la fecha y hora actuales.
  • Establezca el parámetro para los procedimientos almacenados.

Obtenga más información sobre cómo establecer parámetros para el script U-SQL.

Pasos siguientes