Executar um pacote do SSIS com a atividade executar pacote do SSIS no Azure Data FactoryRun an SSIS package with the Execute SSIS Package activity in Azure Data Factory

Este artigo descreve como executar um pacote SQL Server Integration Services (SSIS) em um pipeline Azure Data Factory usando a atividade executar pacote do SSIS.This article describes how to run a SQL Server Integration Services (SSIS) package in an Azure Data Factory pipeline by using the Execute SSIS Package activity.

Pré-requisitosPrerequisites

Nota

Este artigo foi atualizado para utilizar o novo módulo AZ do Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Pode continuar a utilizar o módulo AzureRM, que continuará a receber correções de erros até, pelo menos, dezembro de 2020.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Para obter mais informações sobre o novo módulo Az e a compatibilidade do AzureRM, veja Apresentação do novo módulo Az do Azure PowerShell.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Para obter instruções de instalação do módulo Az, veja Instalar o Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Crie um IR (tempo de execução de integração) do Azure-SSIS, se você ainda não tiver um, seguindo as instruções passo a passo no tutorial: provisionando Azure-SSIS ir.Create an Azure-SSIS integration runtime (IR) if you don't have one already by following the step-by-step instructions in the Tutorial: Provisioning Azure-SSIS IR.

Executar um pacote no portal do AzureRun a package in the Azure portal

Nesta seção, você usará o Data Factory interface do usuário ou o aplicativo para criar um pipeline Data Factory com uma atividade executar pacote do SSIS que executa seu pacote SSIS.In this section, you use the Data Factory user interface (UI) or app to create a Data Factory pipeline with an Execute SSIS Package activity that runs your SSIS package.

Criar um pipeline com uma atividade executar pacote do SSISCreate a pipeline with an Execute SSIS Package activity

Nesta etapa, você usa a interface do usuário do Data Factory ou o aplicativo para criar um pipeline.In this step, you use the Data Factory UI or app to create a pipeline. Você adiciona uma atividade executar pacote do SSIS ao pipeline e a configura para executar seu pacote SSIS.You add an Execute SSIS Package activity to the pipeline and configure it to run your SSIS package.

  1. Em sua visão geral do Data Factory ou home page no portal do Azure, selecione o bloco criar & monitor para iniciar a interface do usuário do data Factory ou o aplicativo em uma guia separada.On your Data Factory overview or home page in the Azure portal, select the Author & Monitor tile to start the Data Factory UI or app in a separate tab.

    Data Factory home page

    Na página Vamos começar, selecione Criar pipeline.On the Let's get started page, select Create pipeline.

    Página Introdução

  2. Na caixa de ferramentas atividades , expanda geral.In the Activities toolbox, expand General. Em seguida, arraste uma atividade executar pacote do SSIS para a superfície do designer de pipeline.Then drag an Execute SSIS Package activity to the pipeline designer surface.

    Arraste uma atividade executar pacote do SSIS para a superfície do designer

  3. Na guia geral da atividade executar pacote do SSIS, forneça um nome e uma descrição para a atividade.On the General tab for the Execute SSIS Package activity, provide a name and description for the activity. Defina valores de tempo limite e de repetição opcionais.Set optional Timeout and Retry values.

    Definir propriedades na guia geral

  4. Na guia configurações da atividade executar pacote SSIS, selecione um Azure-SSIS ir em que você deseja executar o pacote.On the Settings tab for the Execute SSIS Package activity, select an Azure-SSIS IR where you want to run your package. Se o pacote usar a autenticação do Windows para acessar armazenamentos de dados (por exemplo, servidores SQL ou compartilhamentos de arquivos locais ou do Azure), marque a caixa de seleção autenticação do Windows .If your package uses Windows authentication to access data stores (for example, SQL servers or file shares on-premises or Azure Files), select the Windows authentication check box. Insira os valores para as credenciais de execução do pacote nas caixas domínio, nome de usuárioe senha .Enter the values for your package execution credentials in the Domain, Username, and Password boxes.

    Como alternativa, você pode usar os segredos armazenados em seu cofre de chaves do Azure como seus valores.Alternatively, you can use secrets stored in your Azure key vault as their values. Para fazer isso, marque a caixa de seleção Azure Key Vault ao lado da credencial relevante.To do so, select the AZURE KEY VAULT check box next to the relevant credential. Selecione ou edite o serviço vinculado do cofre de chaves existente ou crie um novo.Select or edit your existing key vault linked service or create a new one. Em seguida, selecione o nome ou a versão do segredo para seu valor de credencial.Then select the secret name or version for your credential value.

    Ao criar ou editar o serviço vinculado do cofre de chaves, você pode selecionar ou editar o cofre de chaves existente ou criar um novo.When you create or edit your key vault linked service, you can select or edit your existing key vault or create a new one. Certifique-se de conceder Data Factory acesso de identidade gerenciada ao cofre de chaves se ainda não tiver feito isso.Make sure to grant Data Factory managed identity access to your key vault if you haven't done so already. Você também pode inserir seus segredos diretamente no seguinte formato: <Key vault linked service name>/<secret name>/<secret version>.You can also enter your secrets directly in the following format: <Key vault linked service name>/<secret name>/<secret version>. Se seu pacote precisar de tempo de execução de 32 bits para executar, marque a caixa de seleção tempo de execução de 32 bits .If your package needs 32-bit runtime to run, select the 32-Bit runtime check box.

    Para local do pacote, selecione SSISDB, sistema de arquivos (pacote) , sistema de arquivos (projeto) ou pacote inserido.For Package location, select SSISDB, File System (Package), File System (Project), or Embedded package. Se você selecionar SSISDB como o local do pacote, que será selecionado automaticamente se o Azure-SSIS ir tiver sido provisionado com o catálogo do SSIS (SSISDB) hospedado por um servidor de banco de dados SQL do Azure ou instância gerenciada, especifique o pacote a ser executado que foi implantado no SSISDB.If you select SSISDB as your package location, which is automatically selected if your Azure-SSIS IR was provisioned with the SSIS catalog (SSISDB) hosted by an Azure SQL Database server or managed instance, specify your package to run that was deployed into SSISDB.

    Se o Azure-SSIS IR estiver em execução e a caixa de seleção entradas manuais estiver desmarcada, procure e selecione suas pastas, projetos, pacotes ou ambientes existentes do SSISDB.If your Azure-SSIS IR is running and the Manual entries check box is cleared, browse and select your existing folders, projects, packages, or environments from SSISDB. Selecione Atualizar para buscar suas pastas, projetos, pacotes ou ambientes recém-adicionados do SSISDB para que fiquem disponíveis para navegação e seleção.Select Refresh to fetch your newly added folders, projects, packages, or environments from SSISDB so that they're available for browsing and selection. Para procurar ou selecionar os ambientes para suas execuções de pacote, você deve configurar seus projetos com antecedência para adicionar esses ambientes como referências das mesmas pastas em SSISDB.To browse or select the environments for your package executions, you must configure your projects beforehand to add those environments as references from the same folders under SSISDB. Para obter mais informações, consulte criar e mapear ambientes SSIS.For more information, see Create and map SSIS environments.

    Para nível de log, selecione um escopo predefinido de registro em log para a execução do pacote.For Logging level, select a predefined scope of logging for your package execution. Marque a caixa de seleção personalizado se desejar inserir seu nome de log personalizado em vez disso.Select the Customized check box if you want to enter your customized logging name instead.

    Definir propriedades na guia Configurações – automático

    Se o Azure-SSIS IR não estiver em execução ou se a caixa de seleção entradas manuais estiver marcada, insira os caminhos do pacote e do ambiente do SSISDB diretamente nos seguintes formatos: <folder name>/<project name>/<package name>.dtsx e <folder name>/<environment name>.If your Azure-SSIS IR isn't running or the Manual entries check box is selected, enter your package and environment paths from SSISDB directly in the following formats: <folder name>/<project name>/<package name>.dtsx and <folder name>/<environment name>.

    Defina as propriedades na guia Configurações – manual

    Se você selecionar sistema de arquivos (pacote) como o local do pacote, que será selecionado automaticamente se o Azure-SSIS ir tiver sido provisionado sem o SSISDB, especifique o pacote a ser executado fornecendo um caminho UNC (Convenção Universal de nomenclatura) ao arquivo de pacote (.dtsx) na caixa caminho do pacote .If you select File System (Package) as your package location, which is automatically selected if your Azure-SSIS IR was provisioned without SSISDB, specify your package to run by providing a Universal Naming Convention (UNC) path to your package file (.dtsx) in the Package path box. Por exemplo, se você armazenar o pacote em arquivos do Azure, o caminho do pacote será \\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx.For example, if you store your package in Azure Files, its package path is \\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx.

    Se você configurar o pacote em um arquivo separado, também precisará fornecer um caminho UNC para o arquivo de configuração (.dtsConfig) na caixa caminho de configuração .If you configure your package in a separate file, you also need to provide a UNC path to your configuration file (.dtsConfig) in the Configuration path box. Por exemplo, se você armazenar sua configuração em arquivos do Azure, seu caminho de configuração será \\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig.For example, if you store your configuration in Azure Files, its configuration path is \\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig.

    Defina as propriedades na guia Configurações – manual

    Se você selecionar sistema de arquivos (projeto) como o local do pacote, especifique o pacote a ser executado fornecendo um caminho UNC para o arquivo de projeto (.ispac) na caixa caminho do projeto e um arquivo de pacote (.dtsx) do seu projeto na caixa nome do pacote .If you select File System (Project) as your package location, specify your package to run by providing a UNC path to your project file (.ispac) in the Project path box and a package file (.dtsx) from your project in the Package name box. Por exemplo, se você armazenar seu projeto em arquivos do Azure, seu caminho de projeto será \\<storage account name>.file.core.windows.net\<file share name>\<project name>.ispac.For example, if you store your project in Azure Files, its project path is \\<storage account name>.file.core.windows.net\<file share name>\<project name>.ispac.

    Defina as propriedades na guia Configurações – manual

    Em seguida, especifique as credenciais para acessar seu projeto, pacote ou arquivos de configuração.Next, specify the credentials to access your project, package, or configuration files. Se você inseriu anteriormente os valores para suas credenciais de execução de pacote (consulte anterior), você pode reutilizá-los selecionando o mesmo que as credenciais de execução de pacote caixa de seleção.If you previously entered the values for your package execution credentials (see previous), you can reuse them by selecting the Same as package execution credentials check box. Caso contrário, insira os valores para o pacote de credenciais de acesso nas caixas domínio, nome de usuárioe senha .Otherwise, enter the values for your package access credentials in the Domain, Username, and Password boxes. Por exemplo, se você armazenar seu projeto, pacote ou configuração em arquivos do Azure, o domínio será Azure, o nome de usuário será <storage account name>e a senha será <storage account key>.For example, if you store your project, package, or configuration in Azure Files, the domain is Azure, the username is <storage account name>, and the password is <storage account key>.

    Como alternativa, você pode usar os segredos armazenados em seu cofre de chaves como seus valores (consulte anterior).Alternatively, you can use secrets stored in your key vault as their values (see previous). Essas credenciais são usadas para acessar o pacote e pacotes filho na tarefa Executar Pacote, tudo a partir de seu próprio caminho ou do mesmo projeto, bem como configurações, que incluem aqueles especificados em seus pacotes.These credentials are used to access your package and child packages in Execute Package Task, all from their own path or the same project, as well as configurations, which include those specified in your packages.

    Se você selecionar pacote inserido como o local do pacote, arraste e solte o pacote para executá-lo ou carregá -lo de uma pasta de arquivo na caixa fornecida.If you select Embedded package as your package location, drag and drop your package to run or Upload it from a file folder into the box provided. Seu pacote será compactado e inserido automaticamente na carga da atividade.Your package will be automatically compressed and embedded in the activity payload. Uma vez inserido, você pode baixar seu pacote posteriormente para edição.Once embedded, you can Download your package later for editing. Você também pode parametrizar seu pacote inserido atribuindo-o a um parâmetro de pipeline que pode ser usado em várias atividades, otimizando assim o tamanho da carga do pipeline.You can also Parameterize your embedded package by assigning it to a pipeline parameter that can be used in multiple activities, hence optimizing the size of your pipeline payload. Se o pacote inserido não for todos criptografados e detectarmos o uso da tarefa Executar Pacote, a caixa de seleção tarefa Executar Pacote será selecionada automaticamente e os pacotes filho relevantes com suas referências de sistema de arquivos serão adicionados automaticamente para que você também os incorpore.If your embedded package is not all encrypted and we detect the use of Execute Package Task in it, the Execute Package Task check box will be automatically selected and the relevant child packages with their file system references will be automatically added for you to also embed them. Se não for possível detectar o uso da tarefa Executar Pacote, você precisará marcar manualmente a caixa de seleção tarefa Executar Pacote e adicionar os pacotes filho relevantes com seu sistema de arquivos referencia um a um para você também incorporá-los.If we can't detect the use of Execute Package Task, you'll have to manually select the Execute Package Task check box and add the relevant child packages with their file system references one by one for you to also embed them. Se os pacotes filho usarem referências SQL Server, verifique se o SQL Server pode ser acessado pelo seu Azure-SSIS IR.If the child packages use SQL Server references, please ensure that the SQL Server is accessible by your Azure-SSIS IR. No momento, não há suporte para o uso de referências de projeto para pacotes filho.The use of project references for child packages is currently unsupported.

    Defina as propriedades na guia Configurações – manual

    Se você usou o nível de proteção EncryptAllWithPassword ou EncryptSensitiveWithPassword quando criou seu pacote via SQL Server Data Tools, insira o valor para sua senha na caixa senha de criptografia .If you used the EncryptAllWithPassword or EncryptSensitiveWithPassword protection level when you created your package via SQL Server Data Tools, enter the value for your password in the Encryption password box. Como alternativa, você pode usar um segredo armazenado em seu cofre de chaves como seu valor (consulte anterior).Alternatively, you can use a secret stored in your key vault as its value (see previous). Se você usou o nível de proteção EncryptSensitiveWithUserKey , insira novamente seus valores confidenciais nos arquivos de configuração ou nas guias parâmetros do SSIS, gerenciadores de conexõesou substituições de propriedades (consulte mais adiante).If you used the EncryptSensitiveWithUserKey protection level, reenter your sensitive values in configuration files or on the SSIS Parameters, Connection Managers, or Property Overrides tabs (see later).

    Se você usou o nível de proteção EncryptAllWithUserKey , ele não tem suporte.If you used the EncryptAllWithUserKey protection level, it's unsupported. Você precisa reconfigurar o pacote para usar outro nível de proteção por meio de SQL Server Data Tools ou o utilitário de linha de comando dtutil.You need to reconfigure your package to use another protection level via SQL Server Data Tools or the dtutil command-line utility.

    Para nível de log, selecione um escopo predefinido de registro em log para a execução do pacote.For Logging level, select a predefined scope of logging for your package execution. Marque a caixa de seleção personalizado se desejar inserir seu nome de log personalizado em vez disso.Select the Customized check box if you want to enter your customized logging name instead. Se você quiser registrar em log as execuções de pacote além de usar os provedores de log padrão que podem ser especificados em seu pacote, especifique a pasta de log fornecendo seu caminho UNC na caixa caminho de log .If you want to log your package executions beyond using the standard log providers that can be specified in your package, specify your log folder by providing its UNC path in the Logging path box. Por exemplo, se você armazenar os logs nos arquivos do Azure, o caminho de log será \\<storage account name>.file.core.windows.net\<file share name>\<log folder name>.For example, if you store your logs in Azure Files, your logging path is \\<storage account name>.file.core.windows.net\<file share name>\<log folder name>. Uma subpasta é criada nesse caminho para cada execução de pacote individual e nomeada depois da ID de execução de atividade do pacote SSIS de execução, na qual os arquivos de log são gerados a cada cinco minutos.A subfolder is created in this path for each individual package run and named after the Execute SSIS Package activity run ID, in which log files are generated every five minutes.

    Por fim, especifique as credenciais para acessar a pasta de log.Finally, specify the credentials to access your log folder. Se você inseriu anteriormente os valores para suas credenciais de acesso de pacote (veja anteriormente), poderá reutilizá-los selecionando a caixa de seleção igual a pacotes de credenciais de acesso .If you previously entered the values for your package access credentials (see previous), you can reuse them by selecting the Same as package access credentials check box. Caso contrário, insira os valores para suas credenciais de acesso de log nas caixas domínio, nome de usuárioe senha .Otherwise, enter the values for your logging access credentials in the Domain, Username, and Password boxes. Por exemplo, se você armazenar os logs nos arquivos do Azure, o domínio será Azure, o nome de usuário será <storage account name>e a senha será <storage account key>.For example, if you store your logs in Azure Files, the domain is Azure, the username is <storage account name>, and the password is <storage account key>.

    Como alternativa, você pode usar os segredos armazenados em seu cofre de chaves como seus valores (consulte anterior).Alternatively, you can use secrets stored in your key vault as their values (see previous). Essas credenciais são usadas para armazenar seus logs.These credentials are used to store your logs.

    Para todos os caminhos UNC mencionados anteriormente, o nome de arquivo totalmente qualificado deve ter menos de 260 caracteres.For all UNC paths previously mentioned, the fully qualified file name must be fewer than 260 characters. O nome do diretório deve ter menos de 248 caracteres.The directory name must be fewer than 248 characters.

  5. Na guia parâmetros do SSIS para a atividade executar pacote SSIS, se o Azure-SSIS ir estiver em execução, o SSISDB será selecionado como o local do pacote e a caixa de seleção entradas manuais na guia configurações será desmarcada, os parâmetros do SSIS existentes no projeto ou pacote selecionado do SSISDB serão exibidos para que você atribua valores a eles.On the SSIS Parameters tab for the Execute SSIS Package activity, if your Azure-SSIS IR is running, SSISDB is selected as your package location, and the Manual entries check box on the Settings tab is cleared, the existing SSIS parameters in your selected project or package from SSISDB are displayed for you to assign values to them. Caso contrário, você pode inseri-los um a um para atribuir valores a eles manualmente.Otherwise, you can enter them one by one to assign values to them manually. Verifique se eles existem e foram inseridos corretamente para que a execução do pacote seja bem sucedido.Make sure that they exist and are correctly entered for your package execution to succeed.

    Se você usou o nível de proteção EncryptSensitiveWithUserKey quando criou o pacote via SQL Server Data Tools e o sistema de arquivos (pacote) ou o sistema de arquivos (projeto) estiver selecionado como o local do pacote, também precisará reinserir os parâmetros confidenciais para atribuir valores a eles em arquivos de configuração ou nessa guia.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive parameters to assign values to them in configuration files or on this tab.

    Ao atribuir valores aos parâmetros, você pode adicionar conteúdo dinâmico usando expressões, funções, Data Factory variáveis do sistema e Data Factory parâmetros ou variáveis de pipeline.When you assign values to your parameters, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables. Como alternativa, você pode usar os segredos armazenados em seu cofre de chaves como seus valores (consulte anterior).Alternatively, you can use secrets stored in your key vault as their values (see previous).

    Definir propriedades na guia parâmetros do SSIS

  6. Na guia gerenciadores de conexões da atividade executar pacote SSIS, se o Azure-SSIS ir estiver em execução, o SSISDB será selecionado como o local do pacote e a caixa de seleção entradas manuais na guia configurações será desmarcada, os gerenciadores de conexões existentes no projeto ou pacote selecionado do SSISDB serão exibidos para que você atribua valores às suas propriedades.On the Connection Managers tab for the Execute SSIS Package activity, if your Azure-SSIS IR is running, SSISDB is selected as your package location, and the Manual entries check box on the Settings tab is cleared, the existing connection managers in your selected project or package from SSISDB are displayed for you to assign values to their properties. Caso contrário, você pode inseri-las uma a uma para atribuir valores às suas propriedades manualmente.Otherwise, you can enter them one by one to assign values to their properties manually. Verifique se eles existem e foram inseridos corretamente para que a execução do pacote seja bem sucedido.Make sure that they exist and are correctly entered for your package execution to succeed.

    Se você usou o nível de proteção EncryptSensitiveWithUserKey quando criou seu pacote via SQL Server Data Tools e o sistema de arquivos (pacote) ou o sistema de arquivos (projeto) estiver selecionado como o local do pacote, também precisará reinserir suas propriedades confidenciais do Gerenciador de conexões para atribuir valores a elas em arquivos de configuração ou nesta guia.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive connection manager properties to assign values to them in configuration files or on this tab.

    Ao atribuir valores às suas propriedades do Gerenciador de conexões, você pode adicionar conteúdo dinâmico usando expressões, funções, Data Factory variáveis do sistema e Data Factory parâmetros ou variáveis de pipeline.When you assign values to your connection manager properties, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables. Como alternativa, você pode usar os segredos armazenados em seu cofre de chaves como seus valores (consulte anterior).Alternatively, you can use secrets stored in your key vault as their values (see previous).

    Definir propriedades na guia gerenciadores de conexões

  7. Na guia substituições de propriedade da atividade executar pacote SSIS, insira os caminhos das propriedades existentes no pacote selecionado um a um para atribuir valores a elas manualmente.On the Property Overrides tab for the Execute SSIS Package activity, enter the paths of existing properties in your selected package one by one to assign values to them manually. Verifique se eles existem e foram inseridos corretamente para que a execução do pacote seja bem sucedido.Make sure that they exist and are correctly entered for your package execution to succeed. Por exemplo, para substituir o valor de sua variável de usuário, insira seu caminho no seguinte formato: \Package.Variables[User::<variable name>].Value.For example, to override the value of your user variable, enter its path in the following format: \Package.Variables[User::<variable name>].Value.

    Se você usou o nível de proteção EncryptSensitiveWithUserKey quando criou o pacote via SQL Server Data Tools e o sistema de arquivos (pacote) ou o sistema de arquivos (projeto) estiver selecionado como o local do pacote, também precisará reinserir suas propriedades confidenciais para atribuir valores a elas em arquivos de configuração ou nesta guia.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive properties to assign values to them in configuration files or on this tab.

    Ao atribuir valores às suas propriedades, você pode adicionar conteúdo dinâmico usando expressões, funções, Data Factory variáveis do sistema e Data Factory parâmetros ou variáveis de pipeline.When you assign values to your properties, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables.

    Definir propriedades na guia substituições de propriedade

    Os valores atribuídos nos arquivos de configuração e na guia parâmetros do SSIS podem ser substituídos usando as guias gerenciadores de conexões ou substituições de propriedades .The values assigned in configuration files and on the SSIS Parameters tab can be overridden by using the Connection Managers or Property Overrides tabs. Os valores atribuídos na guia gerenciadores de conexões também podem ser substituídos usando a guia substituições de propriedade .The values assigned on the Connection Managers tab can also be overridden by using the Property Overrides tab.

  8. Para validar a configuração de pipeline, selecione validar na barra de ferramentas.To validate the pipeline configuration, select Validate on the toolbar. Para fechar o relatório de validação de pipeline, selecione >> .To close the Pipeline Validation Report, select >>.

  9. Para publicar o pipeline para Data Factory, selecione publicar tudo.To publish the pipeline to Data Factory, select Publish All.

Executar o pipelineRun the pipeline

Nesta etapa, você dispara uma execução de pipeline.In this step, you trigger a pipeline run.

  1. Para disparar uma execução de pipeline, selecione gatilho na barra de ferramentas e selecione disparar agora.To trigger a pipeline run, select Trigger on the toolbar, and select Trigger now.

    Acionar agora

  2. Na janela Executar Pipeline, selecione Concluir.In the Pipeline Run window, select Finish.

Monitorizar o pipelineMonitor the pipeline

  1. Mude para o separador Monitorizar, no lado esquerdo.Switch to the Monitor tab on the left. Você vê a execução do pipeline e seu status junto com outras informações, como a hora de início da execução .You see the pipeline run and its status along with other information, such as the Run Start time. Para atualizar a vista, selecione Atualizar.To refresh the view, select Refresh.

    Execuções de pipeline

  2. Selecione a ligação Ver Execuções de Atividades na coluna Ações.Select the View Activity Runs link in the Actions column. Você vê apenas uma execução de atividade porque o pipeline tem apenas uma atividade.You see only one activity run because the pipeline has only one activity. É a atividade executar pacote SSIS.It's the Execute SSIS Package activity.

    Execuções de atividade

  3. Execute a consulta a seguir no banco de dados SSISDB no SQL Server para verificar se o pacote foi executado.Run the following query against the SSISDB database in your SQL server to verify that the package executed.

    select * from catalog.executions
    

    Verificar execuções de pacote

  4. Você também pode obter a ID de execução do SSISDB da saída da execução da atividade do pipeline e usar a ID para verificar logs de execução mais abrangentes e mensagens de erro no SQL Server Management Studio.You can also get the SSISDB execution ID from the output of the pipeline activity run and use the ID to check more comprehensive execution logs and error messages in SQL Server Management Studio.

    Obtenha a ID de execução.

Agendar o pipeline com um gatilhoSchedule the pipeline with a trigger

Você também pode criar um gatilho agendado para o pipeline para que o pipeline seja executado em uma agenda, como por hora ou por dia.You can also create a scheduled trigger for your pipeline so that the pipeline runs on a schedule, such as hourly or daily. Para obter um exemplo, consulte criar uma interface do usuário de data factory data Factory.For an example, see Create a data factory - Data Factory UI.

Executar um pacote com o PowerShellRun a package with PowerShell

Nesta seção, você usará Azure PowerShell para criar um pipeline de Data Factory com uma atividade executar pacote do SSIS que executa seu pacote SSIS.In this section, you use Azure PowerShell to create a Data Factory pipeline with an Execute SSIS Package activity that runs your SSIS package.

Instale os módulos de Azure PowerShell mais recentes seguindo as instruções passo a passo em como instalar e configurar o Azure PowerShell.Install the latest Azure PowerShell modules by following the step-by-step instructions in How to install and configure Azure PowerShell.

Criar um data factory com Azure-SSIS IRCreate a data factory with Azure-SSIS IR

Você pode usar um data factory existente que já tenha Azure-SSIS IR provisionado ou criar um novo data factory com Azure-SSIS IR.You can either use an existing data factory that already has Azure-SSIS IR provisioned or create a new data factory with Azure-SSIS IR. Siga as instruções detalhadas no tutorial: implantar pacotes do SSIS no Azure por meio do PowerShell.Follow the step-by-step instructions in the Tutorial: Deploy SSIS packages to Azure via PowerShell.

Criar um pipeline com uma atividade executar pacote do SSISCreate a pipeline with an Execute SSIS Package activity

Nesta etapa, você cria um pipeline com uma atividade executar pacote do SSIS.In this step, you create a pipeline with an Execute SSIS Package activity. A atividade executa o pacote SSIS.The activity runs your SSIS package.

  1. Crie um arquivo JSON chamado RunSSISPackagePipeline. JSON na pasta C:\ADF\RunSSISPackage com conteúdo semelhante ao exemplo a seguir.Create a JSON file named RunSSISPackagePipeline.json in the C:\ADF\RunSSISPackage folder with content similar to the following example.

    Importante

    Substitua nomes de objeto, descrições e caminhos, valores de propriedade ou parâmetro, senhas e outros valores de variáveis antes de salvar o arquivo.Replace object names, descriptions, and paths, property or parameter values, passwords, and other variable values before you save the file.

    {
        "name": "RunSSISPackagePipeline",
        "properties": {
            "activities": [{
                "name": "MySSISActivity",
                "description": "My SSIS package/activity description",
                "type": "ExecuteSSISPackage",
                "typeProperties": {
                    "connectVia": {
                        "referenceName": "MyAzureSSISIR",
                        "type": "IntegrationRuntimeReference"
                    },
                    "executionCredential": {
                        "domain": "MyExecutionDomain",
                        "username": "MyExecutionUsername",
                        "password": {
                            "type": "SecureString",
                            "value": "MyExecutionPassword"
                        }
                    },
                    "runtime": "x64",
                    "loggingLevel": "Basic",
                    "packageLocation": {
                        "packagePath": "MyFolder/MyProject/MyPackage.dtsx",
                        "type": "SSISDB"
                    },
                    "environmentPath": "MyFolder/MyEnvironment",
                    "projectParameters": {
                        "project_param_1": {
                            "value": "123"
                        },
                        "project_param_2": {
                            "value": {
                                "value": "@pipeline().parameters.MyProjectParameter",
                                "type": "Expression"
                            }
                        }
                    },
                    "packageParameters": {
                        "package_param_1": {
                            "value": "345"
                        },
                        "package_param_2": {
                            "value": {
                                "type": "AzureKeyVaultSecret",
                                "store": {
                                    "referenceName": "myAKV",
                                    "type": "LinkedServiceReference"
                                },
                                "secretName": "MyPackageParameter"
                            }
                        }
                    },
                    "projectConnectionManagers": {
                        "MyAdonetCM": {
                            "username": {
                                "value": "MyConnectionUsername"
                            },
                            "password": {
                                "value": {
                                    "type": "SecureString",
                                    "value": "MyConnectionPassword"
                                }
                            }
                        }
                    },
                    "packageConnectionManagers": {
                        "MyOledbCM": {
                            "username": {
                                "value": {
                                    "value": "@pipeline().parameters.MyConnectionUsername",
                                    "type": "Expression"
                                }
                            },
                            "password": {
                                "value": {
                                    "type": "AzureKeyVaultSecret",
                                    "store": {
                                        "referenceName": "myAKV",
                                        "type": "LinkedServiceReference"
                                    },
                                    "secretName": "MyConnectionPassword",
                                    "secretVersion": "MyConnectionPasswordVersion"
                                }
                            }
                        }
                    },
                    "propertyOverrides": {
                        "\\Package.MaxConcurrentExecutables": {
                            "value": 8,
                            "isSensitive": false
                        }
                    }
                },
                "policy": {
                    "timeout": "0.01:00:00",
                    "retry": 0,
                    "retryIntervalInSeconds": 30
                }
            }]
        }
    }
    

    Para executar pacotes armazenados em sistemas de arquivos, compartilhamentos de arquivos ou arquivos do Azure, insira os valores para as propriedades do pacote e local do log da seguinte maneira:To execute packages stored in file systems, file shares, or Azure Files, enter the values for your package and log location properties as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyPackage.dtsx",
                        "type": "File",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "accessCredential": {
                                "domain": "Azure",
                                "username": "MyStorageAccount",
                                "password": {
                                    "type": "SecureString",
                                    "value": "MyAccountKey"
                                }
                            }
                        }
                    },
                    "logLocation": {
                        "logPath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyLogFolder",
                        "type": "File",
                        "typeProperties": {
                            "accessCredential": {
                                "domain": "Azure",
                                "username": "MyStorageAccount",
                                "password": {
                                    "type": "AzureKeyVaultSecret",
                                    "store": {
                                        "referenceName": "myAKV",
                                        "type": "LinkedServiceReference"
                            },
                                    "secretName": "MyAccountKey"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    

    Para executar pacotes em projetos armazenados em sistemas de arquivos, compartilhamentos de arquivos ou arquivos do Azure, insira os valores para a propriedade local do pacote da seguinte maneira:To execute packages within projects stored in file systems, file shares, or Azure Files, enter the values for your package location property as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyProject.ispac:MyPackage.dtsx",
                        "type": "File",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "accessCredential": {
                                "domain": "Azure",
                                "userName": "MyStorageAccount",
                                "password": {
                                    "type": "SecureString",
                                    "value": "MyAccountKey"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    

    Para executar pacotes inseridos, insira os valores para a propriedade local do pacote da seguinte maneira:To execute embedded packages, enter the values for your package location property as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "type": "InlinePackage",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "packageName": "MyPackage.dtsx",
                            "packageContent":"My compressed/uncompressed package content",
                            "packageLastModifiedDate": "YYYY-MM-DDTHH:MM:SSZ UTC-/+HH:MM"
                        }
                    }
                }
            }
        }
    }
    
  2. Em Azure PowerShell, alterne para a pasta C:\ADF\RunSSISPackage .In Azure PowerShell, switch to the C:\ADF\RunSSISPackage folder.

  3. Para criar o pipeline RunSSISPackagePipeline, execute o cmdlet set-AzDataFactoryV2Pipeline .To create the pipeline RunSSISPackagePipeline, run the Set-AzDataFactoryV2Pipeline cmdlet.

    $DFPipeLine = Set-AzDataFactoryV2Pipeline -DataFactoryName $DataFactory.DataFactoryName `
                                                   -ResourceGroupName $ResGrp.ResourceGroupName `
                                                   -Name "RunSSISPackagePipeline"
                                                   -DefinitionFile ".\RunSSISPackagePipeline.json"
    

    Aqui está a saída de exemplo:Here's the sample output:

    PipelineName      : Adfv2QuickStartPipeline
    ResourceGroupName : <resourceGroupName>
    DataFactoryName   : <dataFactoryName>
    Activities        : {CopyFromBlobToBlob}
    Parameters        : {[inputPath, Microsoft.Azure.Management.DataFactory.Models.ParameterSpecification], [outputPath, Microsoft.Azure.Management.DataFactory.Models.ParameterSpecification]}
    

Executar o pipelineRun the pipeline

Use o cmdlet Invoke-AzDataFactoryV2Pipeline para executar o pipeline.Use the Invoke-AzDataFactoryV2Pipeline cmdlet to run the pipeline. O cmdlet devolve o ID de execução do pipeline para monitorização futura.The cmdlet returns the pipeline run ID for future monitoring.

$RunId = Invoke-AzDataFactoryV2Pipeline -DataFactoryName $DataFactory.DataFactoryName `
                                             -ResourceGroupName $ResGrp.ResourceGroupName `
                                             -PipelineName $DFPipeLine.Name

Monitorizar o pipelineMonitor the pipeline

Execute o seguinte script do PowerShell para verificar continuamente o estado de execução do pipeline até que este termine de copiar os dados.Run the following PowerShell script to continuously check the pipeline run status until it finishes copying the data. Copie ou cole o script a seguir na janela do PowerShell e selecione Enter.Copy or paste the following script in the PowerShell window, and select Enter.

while ($True) {
    $Run = Get-AzDataFactoryV2PipelineRun -ResourceGroupName $ResGrp.ResourceGroupName `
                                               -DataFactoryName $DataFactory.DataFactoryName `
                                               -PipelineRunId $RunId

    if ($Run) {
        if ($run.Status -ne 'InProgress') {
            Write-Output ("Pipeline run finished. The status is: " +  $Run.Status)
            $Run
            break
        }
        Write-Output  "Pipeline is running...status: InProgress"
    }

    Start-Sleep -Seconds 10
}   

Você também pode monitorar o pipeline usando o portal do Azure.You can also monitor the pipeline by using the Azure portal. Para obter as instruções passo a passo, consulte monitorar o pipeline.For step-by-step instructions, see Monitor the pipeline.

Agendar o pipeline com um gatilhoSchedule the pipeline with a trigger

Na etapa anterior, você executou o pipeline sob demanda.In the previous step, you ran the pipeline on demand. Você também pode criar um gatilho de agendamento para executar o pipeline em um agendamento, como por hora ou por dia.You can also create a schedule trigger to run the pipeline on a schedule, such as hourly or daily.

  1. Crie um arquivo JSON chamado mytrigger. JSON na pasta C:\ADF\RunSSISPackage com o seguinte conteúdo:Create a JSON file named MyTrigger.json in the C:\ADF\RunSSISPackage folder with the following content:

    {
        "properties": {
            "name": "MyTrigger",
            "type": "ScheduleTrigger",
            "typeProperties": {
                "recurrence": {
                    "frequency": "Hour",
                    "interval": 1,
                    "startTime": "2017-12-07T00:00:00-08:00",
                    "endTime": "2017-12-08T00:00:00-08:00"
                }
            },
            "pipelines": [{
                "pipelineReference": {
                    "type": "PipelineReference",
                    "referenceName": "RunSSISPackagePipeline"
                },
                "parameters": {}
            }]
        }
    }    
    
  2. Em Azure PowerShell, alterne para a pasta C:\ADF\RunSSISPackage .In Azure PowerShell, switch to the C:\ADF\RunSSISPackage folder.

  3. Execute o cmdlet set-AzDataFactoryV2Trigger , que cria o gatilho.Run the Set-AzDataFactoryV2Trigger cmdlet, which creates the trigger.

    Set-AzDataFactoryV2Trigger -ResourceGroupName $ResGrp.ResourceGroupName `
                                    -DataFactoryName $DataFactory.DataFactoryName `
                                    -Name "MyTrigger" -DefinitionFile ".\MyTrigger.json"
    
  4. Por padrão, o gatilho está no estado parado.By default, the trigger is in stopped state. Inicie o gatilho executando o cmdlet Start-AzDataFactoryV2Trigger .Start the trigger by running the Start-AzDataFactoryV2Trigger cmdlet.

    Start-AzDataFactoryV2Trigger -ResourceGroupName $ResGrp.ResourceGroupName `
                                      -DataFactoryName $DataFactory.DataFactoryName `
                                      -Name "MyTrigger" 
    
  5. Confirme se o gatilho é iniciado executando o cmdlet Get-AzDataFactoryV2Trigger .Confirm that the trigger is started by running the Get-AzDataFactoryV2Trigger cmdlet.

    Get-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName `
                                    -DataFactoryName $DataFactoryName `
                                    -Name "MyTrigger"     
    
  6. Execute o comando a seguir após a próxima hora.Run the following command after the next hour. Por exemplo, se a hora atual for 3:25 PM UTC, execute o comando às 4 PM UTC.For example, if the current time is 3:25 PM UTC, run the command at 4 PM UTC.

    Get-AzDataFactoryV2TriggerRun -ResourceGroupName $ResourceGroupName `
                                       -DataFactoryName $DataFactoryName `
                                       -TriggerName "MyTrigger" `
                                       -TriggerRunStartedAfter "2017-12-06" `
                                       -TriggerRunStartedBefore "2017-12-09"
    

    Execute a consulta a seguir no banco de dados SSISDB no SQL Server para verificar se o pacote foi executado.Run the following query against the SSISDB database in your SQL server to verify that the package executed.

    select * from catalog.executions
    

Passos seguintesNext steps

Consulte a seguinte postagem no blog:See the following blog post: