Compartilhar via


Executar pacotes SSIS no Azure a partir do SSDT

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

Este artigo descreve o recurso de projetos SSIS (SQL Server Integration Services) habilitados para o Azure em SSDT (SQL Server Data Tools). Ele permite que você avalie a compatibilidade de nuvem dos pacotes do SSIS e os execute no Azure-SSIS Integration Runtime (IR) dentro do ADF (Azure Data Factory). Use esse recurso para testar seus pacotes antes de levantar e deslocar, migrá-los para o Azure ou para desenvolver novos pacotes para serem executados no Azure.

Com esse recurso, você consegue anexar um Azure-SSIS IR recém-criado/existente aos projetos do SSIS e executar seus pacotes nele. É compatível com a execução de pacotes a serem implantados no catálogo do SSIS (SSISDB) hospedado pelo seu servidor do Banco de Dados SQL do Azure ou instância gerenciada no Modelo de Implantação de Projeto. Também é compatível com a execução de pacotes a serem implantados no sistema de arquivos, nos Arquivos do Azure ou no MSDB (Banco de Dados do SQL Server) hospedado pela instância gerenciada de SQL do Azure no Modelo de Implantação de Pacote.

Pré-requisitos

Para usar esse recurso, baixe e instale aqui, o SSDT mais recente com a extensão de Projetos do SSIS para Visual Studio (VS). Como alternativa, você também pode baixar e instalar o SSDT mais recente como um instalador autônomo aqui.

Projetos SSIS habilitados para Azure

Criação de novos projetos do SSIS habilitados para Azure

No SSDT, você pode criar novos projetos do SSIS habilitados para o Azure usando o modelo de Projeto do Integration Services (habilitado para o Azure) .

New Azure-enabled SSIS project

Depois que o projeto habilitado para o Azure for criado, você será solicitado a se conectar ao SSIS no Azure Data Factory.

Connect Azure-SSIS IR prompt

Se quiser se conectar ao seu Azure-SSIS IR de imediato, consulte Conexão com o Azure-SSIS IR para obter mais detalhes. Também é possível se conectar depois clicando com o botão direito do mouse no nó do projeto, na janela Gerenciador de Soluções do SSDT, em que será exibido um menu. Em seguida selecione o item Conectar ao SSIS no Azure Data Factory no submenu SSIS no Azure data Factory.

Projetos SSIS existentes habilitados para Azure

Habilite os projetos SSIS existentes no Azure seguindo estas etapas:

  1. Clique com o botão direito do mouse no nó do projeto na janela do Gerenciador de Soluções do SSDT para exibir um menu. Selecione o item Projeto habilitado para Azure no submenu SSIS no Azure Data Factory para iniciar o Assistente de Projeto Habilitado no Azure.

    Azure-enable existing SSIS project

  2. Na página Selecionar Configuração do Visual Studio, selecione a configuração existente do VS para aplicar as configurações de execução do pacote no Azure. Você pode criar um novo se ainda não tiver feito isso. Consulte Criação de nova configuração do VS. Recomenda-se ter pelo menos duas configurações diferentes de VS para as execuções de pacote nos ambientes locais e na nuvem, para que você possa habilitar seu projeto no Azure em relação à configuração de nuvem. Dessa forma, se você tiver parametrizado o projeto ou os pacotes, pode atribuir valores diferentes ao projeto ou aos parâmetros do pacote em tempo de execução, com base nos diferentes ambientes de execução (em seu computador local ou no Azure). Por exemplo, consulte Alternando ambientes de execução de pacote.

    Select Visual Studio configuration

  3. A habilitação do Azure para seus projetos SSIS existentes exige que você defina a versão do servidor de destino como a mais recente, compatível com o Azure-SSIS IR. No momento, o Azure-SSIS IR é baseado em SQL Server 2017. Confira se seus pacotes não contêm componentes adicionais que não são compatíveis com o SQL Server 2017. Confira também se todos os componentes adicionais compatíveis foram instalados no Azure-SSIS IR por meio das configurações personalizadas. Consulte Personalização do Azure-SSIS IR. Escolha o botão Avançar para continuar.

    Switch target server version

  4. Consulte Conexão com o Azure-SSIS IR para concluir a conexão do seu projeto com o Azure-SSIS IR.

Conectar projetos habilitados no Azure com o SSIS no Azure Data Factory

Conectando seus projetos habilitados para o Azure ao SSIS no ADF, você pode carregar seus pacotes em arquivos do Azure e executá-los no Azure-SSIS IR. Conecte seguindo essas etapas:

  1. Na página do SSI em Introdução ao ADF, revise a introdução e clique no botão Avançar para continuar.

    SSIS in ADF introduction

  2. Na página Selecionar SSIS IR no ADF, selecione o ADF e o Azure-SSIS IR existentes para executar os pacotes. Você também pode criar novos se não tiver nenhum.

    • Para selecionar o Azure-SSIS IR existente, selecione primeiro a assinatura relevante do Azure e o ADF.
    • Se você escolher um ADF existente que não tem nenhum Azure-SSIS IR, selecione o botão Criar SSIS IR para criar um novo no portal do ADF. Depois de criado, retorne a esta página para selecionar o novo Azure-SSIS IR.
    • Se você escolher uma assinatura do Azure que não tem nenhum ADF, selecione o botão Criar SSIS IR para iniciar o Assistente de Criação do Integration Runtime. No assistente, insira o local designado e o prefixo para que possamos criar automaticamente para você, um novo Grupo de Recursos do Azure, o Data Factory e o SSIS IR, com o nome no seguinte padrão: YourPrefix-RG/DF/IR-YourCreationTime. Depois de criado, retorne a esta página para selecionar o novo ADF e o Azure-SSIS IR.

    Select SSIS IR in ADF

  3. Na página Selecionar Armazenamento do Microsoft Azure, selecione sua conta do Armazenamento do Microsoft Azure para carregar os pacotes nos Arquivos do Azure. Você também pode criar novos se não tiver nenhum.

    • Para selecionar a Conta de Armazenamento do Azure, selecione primeiro a assinatura relevante do Azure.
    • Se você escolher a mesma assinatura do Azure que o Azure-SSIS IR o qual não tem nenhuma conta de Armazenamento do Azure, selecione o botão Criar Armazenamento do Azure. Será criado automaticamente um novo no mesmo local em que está o Azure-SSIS IR, cujo nome é a combinação do prefixo do nome do Azure-SSIS IR e a data de criação. Depois de criado, retorne a esta página para selecionar a nova conta do Armazenamento do Microsoft Azure.
    • Se você escolher uma assinatura diferente do Azure que não tem nenhuma conta de Armazenamento do Microsoft Azure, selecione o botão Criar Armazenamento do Azure para criar uma nova no portal do Azure. Depois de criado, retorne a esta página para selecionar a nova conta do Armazenamento do Microsoft Azure.

    Select Azure Storage

  4. Selecione o botão Conectar para concluir a conexão do projeto com o Azure-SSIS IR. O Azure-SSIS IR selecionado e a conta de Armazenamento do Azure serão exibidos no nó Recursos Vinculados do Azure, na janela Gerenciador de Soluções do SSDT. O status do seu Azure-SSIS IR também é atualizado e exibido regularmente. Para gerenciar o Azure-SSIS IR, clique com o botão direito do mouse no nó para exibir um menu e selecionar o item Iniciar\Parar\Gerenciar que leva você ao portal do ADF para executar as ações desejadas.

Avaliar projetos e pacotes do SSIS para execuções no Azure

Avalição de um ou vários pacotes

Antes de executar seus pacotes no Azure, você pode avaliá-los para descobrir quaisquer possíveis problemas de compatibilidade de nuvem. Podem ser bloqueadores de migração e informações adicionais sobre as quais você deve estar atento.

  • Opte por avaliar pacotes únicos um por um ou todos os pacotes ao mesmo tempo em seu projeto.

    Assess package

    Assess project

  • Na janela Relatório de Avaliação do SSDT, você encontra todos os possíveis problemas de compatibilidade de nuvem que apareceram, cada um com sua descrição e recomendação detalhadas. É possível exportar o relatório de avaliação para um arquivo CSV que pode ser compartilhado com qualquer pessoa para tomar as ações de mitigação desses problemas.

    Assessment report

Supressão das regras de avaliação

Quando tiver certeza de que alguns possíveis problemas de compatibilidade de nuvem não são aplicáveis ou foram mitigados corretamente em seus pacotes, você pode suprimir as regras de avaliação relevantes que fazem com que esses problemas sejam apontados. Isso reduz os apontamentos desnecessários em seus relatórios de avaliação subsequentes.

  • Selecione o link Configurar Supressão da Regra de Avaliação na janela Relatório de Avaliação do SSDT para exibir a janela de Configurações de Supressão da Regra de Avaliação, em que é possível selecionar as regras de avaliação a serem suprimidas.

    Assessment rule suppression settings

  • Com alternativa, clique com o botão direito do mouse no nó do projeto, na janela do Gerenciador de Soluções do SSDT para exibir um menu. Selecione o item Configurações Habilitadas para o Azure no submenu do SSIS no Azure Data Factory para exibir uma janela que contém as páginas de propriedades do projeto. Selecione a propriedade IDs da Regra de Avaliação Suprimida na seção Configurações Habilitadas para o Azure. Por fim, selecione o botão de reticências ( ... ) para exibir a janela Configurações de Supressão da Regra de Avaliação, em que é possível selecionar as regras de avaliação a serem suprimidas.

    Azure-enabled settings

    Assessment rule suppression settings via Azure-enabled settings

Executar pacotes SSIS no Azure

Definição de configurações habilitadas para o Azure

Antes de executar os pacotes no Azure, defina as configurações habilitadas para o Azure para esses pacotes. Por exemplo, habilite a autenticação do Windows em seu Azure-SSIS IR para acessar o armazenamentos de dados locais ou na nuvem seguindo estas etapas:

  1. Clique com o botão direito do mouse no nó do projeto na janela do Gerenciador de Soluções do SSDT para exibir um menu. Selecione o item Configurações Habilitadas para o Azure no submenu do SSIS no Azure Data Factory para exibir uma janela que contém as páginas de propriedades do projeto.

    Azure-enabled settings

  2. Selecione a propriedade Habilitar a Autenticação do Windows na seção Configurações Habilitadas para o Azure e selecione Verdadeiro no menu suspenso. Em seguida selecione a propriedade Credenciais de Autenticação do Windows e o botão de reticências ( ... ) para exibir a janela Credenciais de Autenticação do Windows.

    Enable Windows authentication

  3. Insira suas credenciais de autenticação do Windows. Por exemplo, para acessar os Arquivos do Azure, insira Azure, YourStorageAccountName e YourStorageAccountKey para Domínio, Nome de usuário e Senha, respectivamente.

    Windows authentication credentials

Início das execuções de pacotes

Depois de conectar os projetos habilitados para o Azure com o SSIS no ADF, avaliar a compatibilidade de nuvem e mitigar possíveis problemas, execute/teste os pacotes no Azure-SSIS IR.

  • Selecione o botão Iniciar na barra de ferramentas do SSDT para listar um menu. Selecione o item Executar no Azure.

    Execute in Azure

  • Com alternativa, clique com o botão direito do mouse no nó do projeto, na janela do Gerenciador de Soluções do SSDT para exibir um menu. Selecione o item Executar Pacote no Azure.

    Execute package in Azure

Observação

A execução dos pacotes no Azure exige que você tenha um Azure-SSIS IR em execução. Portanto, se o Azure-SSIS IR for interrompido, uma janela de caixa de diálogo será exibida para iniciá-lo. Excluindo qualquer tempo de configuração personalizado, esse processo deve ser concluído em 5 minutos, mas pode levar aproximadamente de 20 a 30 minutos para o Azure-SSIS IR ingressar em uma rede virtual. Depois de executar os pacotes no Azure, interrompa o Azure-SSIS IR para gerenciar o custo de execução clicando com o botão direito do mouse no nó, na janela Gerenciador de Soluções do SSDT, para exibir um menu e selecionar o item Iniciar\Parar\Gerenciar que leva você ao portal do ADF para executar as ações desejadas.

Uso da Tarefa Executar Pacote

Se seus pacotes contiverem Tarefas para Executar Pacote que se referem a pacotes filhos armazenados em sistemas de arquivos locais, siga estas etapas adicionais:

  1. Carregue os pacotes filhos nos Arquivos do Azure, na mesma conta de Armazenamento do Microsoft Azure conectada aos seus projetos, e obtenha o novo caminho de UNC (Universal Naming Convention), por exemplo, \\YourStorageAccountName.file.core.windows.net\ssdtexecution\YourChildPackage1.dtsx

  2. Substitua o caminho do arquivo desses pacotes filhos no Gerenciador de Conexões de Arquivos das Tarefas Executar Pacote com o novo caminho UNC

    • Se o computador local que executa o SSDT não puder acessar o novo caminho UNC, insira o caminho no painel de propriedades do Gerenciador de Conexões de Arquivos
    • Como alternativa, use uma variável para o caminho do arquivo para atribuir o valor correto em tempo de execução

Se os pacotes contiverem Tarefas para Executar Pacote que se referem a pacotes filhos no mesmo projeto, nenhuma etapa adicional será necessária.

Mudança do nível de proteção do pacote

A execução de pacotes do SSIS no Azure não é compatível com os níveis de proteção EncryptSensitiveWithUserKey/EncryptAllWithUserKey. Consequentemente, se os pacotes estiverem configurados para usá-los, eles serão convertidos temporariamente para usarem os níveis de proteção EncryptSensitiveWithPassword/EncryptAllWithPassword, respectivamente. Também serão geradas aleatoriamente senhas de criptografia quando carregarmos os pacotes nos Arquivos do Azure para as execuções no Azure-SSIS IR.

Observação

Se seus pacotes contiverem Tarefas para Executar Pacote que se referem a pacotes filhos configurados para usarem os níveis de proteção EncryptSensitiveWithUserKey/EncryptAllWithUserKey, você precisará reconfigurar manualmente esses pacotes filhos para usarem os níveis de proteção EncryptSensitiveWithPassword/EncryptAllWithPassword respectivamente, antes de executar os pacotes.

Se seus pacotes já estiverem configurados para usar os níveis de proteção EncryptSensitiveWithPassword/EncryptAllWithPassword, eles não serão alterados. Ainda serão geradas aleatoriamente senhas de criptografia quando carregarmos os pacotes nos Arquivos do Azure para as execuções no Azure-SSIS IR.

Mudança de ambientes de execução de pacote

Se você parametrizar o projeto/pacotes no Modelo de Implantação de Projeto, poderá criar várias configurações do VS para mudar os ambientes de execução do pacote. Dessa forma, você pode atribuir valores específicos de ambiente aos parâmetros de projeto/pacote em tempo de execução. Recomenda-se ter pelo menos duas configurações diferentes de VS para as execuções de pacote nos ambientes locais e na nuvem, para que você possa habilitar seu projeto no Azure em relação à configuração de nuvem. Abaixo, um exemplo com o passo a passo de como mudar os ambientes de execução do pacote entre seu computador local e o Azure:

  1. Digamos que seu pacote contenha uma Tarefa de Sistema de Arquivos que defina os atributos de um arquivo. Quando você o executa em seu computador local, ela define os atributos de um arquivo armazenado no sistema de arquivos local. Ao executá-la no Azure-SSIS IR, você deseja que ela defina os atributos de um arquivo armazenado nos Arquivos do Azure. Primeiro, crie um parâmetro de pacote do tipo cadeia de caracteres e o nomeie como FilePath para conter o valor do caminho do arquivo de destino.

    Create package parameter

  2. Na página Geral da janela Editor da Tarefa de Sistema de Arquivos, parametrize a propriedade SourceVariable na seção Conexão da Origem com o parâmetro de pacote FilePath.

    Parameterize source connection

  3. Por padrão, você tem uma configuração existente do VS para execuções de pacotes no ambiente local chamado Desenvolvimento. Crie uma nova configuração do VS para execuções de pacotes no ambiente de nuvem chamado Azure. Consulte Criação de uma nova configuração do VS, se você ainda não tiver feito isso.

  4. Ao exibir os parâmetros do pacote, selecione o botão Adicionar Parâmetros às Configurações para abrir a janela Gerenciar Valores de Parâmetro para o pacote. Atribua valores diferentes do caminho do arquivo de destino ao parâmetro de pacote FilePath nas configurações de Desenvolvimento e do Azure.

    Assign parameter values

  5. Habilite o projeto no Azure em relação à configuração de nuvem. Consulte Projetos SSIS existentes habilitados para Azure, se você ainda não tiver feito isso. Em seguida, defina as configurações habilitadas para o Azure para habilitar a autenticação do Windows para o Azure-SSIS IR acessar os Arquivos do Azure. Consulte Definição das configurações habilitadas para o Azure, se você ainda não tiver feito isso.

  6. Execute seu pacote no Azure. Você pode mudar o ambiente de execução do pacote de volta para seu computador local selecionando a configuração Desenvolvimento.

    Switch Visual Studio Configuration

Uso do arquivo de configuração de pacote

Se você usar arquivos de configuração de pacote no Modelo de Implantação de Pacote, poderá atribuir valores específicos de ambiente às propriedades do pacote em tempo de execução. Esses arquivos com seus pacotes serão carregados automaticamente nos Arquivos do Azure para serem executados no seu Azure-SSIS IR.

Verificação dos logs de execução de pacote

Depois de iniciar a execução do pacote, formatamos e exibimos os logs na janela Progresso do SSDT. Para um pacote de execução longa, atualizamos periodicamente os logs em questão de minutos. Você pode cancelar imediatamente a execução do pacote selecionando o botão Parar na barra de ferramentas do SSDT. Também pode localizar temporariamente os dados brutos dos logs no seguinte caminho UNC: \\<YourStorageAccountName>.file.core.windows.net\ssdtexecution\<YourProjectName-FirstConnectTime>\<YourPackageName-tmp-ExecutionTime>\logs, mas ele será limpo após um dia.

Limitações atuais

  • No momento, o SSDT habilitado para Azure é compatível apenas nas regiões de nuvem comerciais e globais e não nas regiões de nuvem governamentais e nacionais.

Depois de executar com sucesso os pacotes no Azure do SSDT, você pode implantá-los e executá-los como atividades Executar Pacote SSIS em pipelines do ADF. Consulte Execução de pacotes do SSIS como atividades Executar Pacote SSIS em pipelines do ADF.