Ejecución de paquetes SSIS con el agente de Instancia administrada de Azure SQL
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 información sobre cómo iniciar una nueva evaluación gratuita.
En este artículo se describe cómo ejecutar un paquete de SQL Server Integration Services (SSIS) mediante el agente de Instancia administrada de Azure SQL. Esta característica proporciona comportamientos similares a cuando se programan paquetes SSIS mediante el Agente SQL Server en el entorno local.
Con esta característica, puede ejecutar paquetes SSIS que se almacenan en SSISDB en una instancia de SQL Managed Instance; un sistema de archivos, como Azure Files; o un almacén de paquetes de entorno de ejecución de integración de Azure-SSIS.
Requisitos previos
Para usar esta característica, descargue e instale la versión más reciente de SQL Server Management Studio (SSMS). A continuación encontrará los detalles de la compatibilidad de versiones:
- Para ejecutar paquetes en SSISDB o en el sistema de archivos, instale la versión 18.5 o posterior de SSMS.
- Para ejecutar paquetes en el almacén de paquetes, instale la versión 18.6 o posterior de SSMS.
También tiene que aprovisionar una instancia de Integration Runtime para la integración de SSIS en Azure en Azure Data Factory. Usa una instancia administrada de Azure SQL como servidor de punto de conexión.
Ejecución de un paquete SSIS en SSISDB
En este procedimiento, se usa el agente de Instancia administrada de SQL para invocar un paquete SSIS que está almacenado en SSISDB.
En la versión más reciente de SSMS, conéctese a la Instancia administrada de SQL.
Cree un trabajo del agente nuevo y un paso de trabajo nuevo. En Agente SQL Server, haga clic con el botón derecho en la carpeta Trabajos y seleccione Nuevo trabajo.
En la página Nuevo paso de trabajo, seleccione el tipo Paquete de SQL Server Integration Services.
En la pestaña Paquete, seleccione Catálogo de SSIS como la ubicación del paquete.
Como SSISDB está en una instancia administrada de SQL, no necesita especificar la autenticación.
Especifique un paquete SSIS del SSISDB.
En la pestaña Configuración, puede:
- Especifique los valores de parámetro en Parámetros.
- Invalidar los valores en Administradores de conexión.
- Invalidar la propiedad y elegir el nivel de registro en Avanzado.
Seleccione Aceptar para guardar la configuración del trabajo del agente.
Inicie el trabajo del Agente para ejecutar el paquete SSIS.
Ejecución de un paquete SSIS en el sistema de archivos
En este procedimiento, se usa el agente de Instancia administrada de SQL para ejecutar un paquete SSIS que está almacenado en el sistema de archivos.
En la versión más reciente de SSMS, conéctese a la Instancia administrada de SQL.
Cree un trabajo del agente nuevo y un paso de trabajo nuevo. En Agente SQL Server, haga clic con el botón derecho en la carpeta Trabajos y seleccione Nuevo trabajo.
En la página Nuevo paso de trabajo, seleccione el tipo Paquete de SQL Server Integration Services.
En la pestaña Paquete:
En Ubicación del paquete, seleccione Sistema de archivos.
En Tipo de origen del archivo:
Si el paquete se carga en Azure Files, seleccione Recurso compartido de archivos de Azure.
La ruta de acceso del paquete es
\\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx
.En Credencial de acceso al archivo del paquete, escriba el nombre de la cuenta del archivo de Azure y la clave de cuenta para acceder al archivo de Azure. El dominio se establece como Azure.
Si el paquete se carga en un recurso compartido de red, seleccione Recurso compartido de red.
La ruta de acceso al paquete es la ruta de acceso UNC del archivo del paquete con su extensión .dtsx.
Escriba el dominio, el nombre de usuario y la contraseña correspondientes para acceder al archivo de paquete del recurso compartido de red.
Si el archivo de paquete está cifrado con una contraseña, seleccione Contraseña de cifrado y escriba la contraseña.
En la pestaña Configuraciones, escriba la ruta de acceso al archivo de configuración si necesita un archivo de configuración para ejecutar el paquete SSIS. Si almacena la configuración en Azure Files, su ruta de acceso de configuración será
\\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig
.En la pestaña Opciones de ejecución, puede elegir si usar la autenticación de Windows o tiempo de ejecución de 32 bits para ejecutar el paquete SSIS.
En la pestaña Registro, puede elegir la ruta de acceso al registro y la credencial de acceso al registro correspondiente para almacenar los archivos de registro. De forma predeterminada, la ruta de acceso al registro es la misma que la ruta de acceso a la carpeta del paquete y la credencial de acceso al registro es igual que la credencial de acceso al paquete. Si almacena los registros en Azure Files, su ruta de acceso de registro será
\\<storage account name>.file.core.windows.net\<file share name>\<log folder name>
.En la pestaña Establecer valores, puede escribir la ruta de acceso a la propiedad y el valor para invalidar las propiedades del paquete.
Por ejemplo, para invalidar el valor de la variable de usuario, escriba su ruta de acceso en el formato
\Package.Variables[User::<variable name>].Value
.Seleccione Aceptar para guardar la configuración del trabajo del agente.
Inicie el trabajo del Agente para ejecutar el paquete SSIS.
Ejecución de un paquete SSIS en el almacén de paquetes
Nota:
El almacén de paquetes no se admite Azure-SSIS IR en Azure Synapse.
En este procedimiento, se usa el agente de SQL Managed Instance para ejecutar un paquete de SSIS que está almacenado en el almacén de paquetes de Azure-SSIS IR.
En la versión más reciente de SSMS, conéctese a la Instancia administrada de SQL.
Cree un trabajo del agente nuevo y un paso de trabajo nuevo. En Agente SQL Server, haga clic con el botón derecho en la carpeta Trabajos y seleccione Nuevo trabajo.
En la página Nuevo paso de trabajo, seleccione el tipo Paquete de SQL Server Integration Services.
En la pestaña Paquete:
En Ubicación del paquete, seleccione Almacén de paquetes.
En Ruta de acceso del paquete:
La ruta de acceso del paquete es
<package store name>\<folder name>\<package name>
.Si el archivo de paquete está cifrado con una contraseña, seleccione Contraseña de cifrado y escriba la contraseña.
En la pestaña Configuraciones, escriba la ruta de acceso al archivo de configuración si necesita un archivo de configuración para ejecutar el paquete SSIS. Si almacena la configuración en Azure Files, su ruta de acceso de configuración será
\\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig
.En la pestaña Opciones de ejecución, puede elegir si usar la autenticación de Windows o tiempo de ejecución de 32 bits para ejecutar el paquete SSIS.
En la pestaña Registro, puede elegir la ruta de acceso al registro y la credencial de acceso al registro correspondiente para almacenar los archivos de registro. De forma predeterminada, la ruta de acceso al registro es la misma que la ruta de acceso a la carpeta del paquete y la credencial de acceso al registro es igual que la credencial de acceso al paquete. Si almacena los registros en Azure Files, su ruta de acceso de registro será
\\<storage account name>.file.core.windows.net\<file share name>\<log folder name>
.En la pestaña Establecer valores, puede escribir la ruta de acceso a la propiedad y el valor para invalidar las propiedades del paquete.
Por ejemplo, para invalidar el valor de la variable de usuario, escriba su ruta de acceso en el formato
\Package.Variables[User::<variable name>].Value
.Seleccione Aceptar para guardar la configuración del trabajo del agente.
Inicie el trabajo del Agente para ejecutar el paquete SSIS.
Cancelación de la ejecución de paquetes SSIS
Para cancelar la ejecución del paquete desde un trabajo del agente de Instancia administrada de SQL, siga estos pasos en lugar de detener directamente el trabajo del agente:
Busque el valor de jobId del Agente de SQL en msdb.dbo.sysjobs.
Busque el valor de executionId de SSIS correspondiente en función del identificador del trabajo con esta consulta:
select * from '{table for job execution}' where parameter_value = 'SQL_Agent_Job_{jobId}' order by execution_id desc
Si los paquetes SSIS están en SSISDB, use ssisdb.internal.execution_parameter_values como tabla para la ejecución del trabajo. Si los paquetes SSIS están en el sistema de archivos, use ssisdb.internal.execution_parameter_values_noncatalog.
Haga clic con el botón derecho en el catálogo de SSISDB y, a continuación, seleccione Operaciones activas.
Detenga la operación correspondiente según executionId.
Contenido relacionado
También puede programar los paquetes SSIS con Azure Data Factory. Para instrucciones paso a paso, consulte Desencadenador de eventos de Azure Data Factory.