Partilhar via


Copiar dados de um banco de dados do SQL Server para o armazenamento de Blob do Azure

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

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

Neste tutorial, você usa a interface do usuário (UI) do Azure Data Factory para criar um pipeline de fábrica de dados que copia dados de um banco de dados do SQL Server para o armazenamento de Blob do Azure. Vai criar e utilizar um runtime de integração autoalojado, que move dados entre arquivos de dados no local e na cloud.

Nota

Este artigo não disponibiliza uma introdução detalhada do Data Factory. Para obter mais informações, veja Introdução ao Data Factory.

Neste tutorial, vai executar os seguintes passos:

  • Criar uma fábrica de dados.
  • Criar um integration runtime autoalojado.
  • Criar serviços ligados do SQL Server e do Armazenamento do Azure.
  • Criar conjuntos de dados do SQL Server e dos Blobs do Azure.
  • Criar um pipeline com uma atividade de cópia para mover os dados.
  • Iniciar uma execução de pipeline.
  • Monitorizar a execução do pipeline.

Pré-requisitos

Subscrição do Azure

Antes de começar, se não tiver uma subscrição do Azure, crie uma conta gratuita.

Funções do Azure

Para criar instâncias de fábricas de dados, a conta de utilizador que utiliza para iniciar sessão no Azure tem de ter atribuída a função Contribuidor ou Proprietário ou ser administradora da subscrição do Azure.

Para ver as permissões que tem na subscrição, aceda ao portal do Azure. No canto superior direito, selecione o nome de utilizador e, em seguida, selecione Permissões. Se tiver acesso a várias subscrições, selecione a subscrição apropriada. Para obter instruções de exemplo sobre como adicionar um usuário a uma função, consulte Atribuir funções do Azure usando o portal do Azure.

SQL Server 2014, 2016 e 2017

Neste tutorial, você usa um banco de dados do SQL Server como um armazenamento de dados de origem . O pipeline no data factory criado neste tutorial copia dados desse banco de dados do SQL Server (origem) para o armazenamento de Blob (coletor). Vai criar uma tabela com o nome emp na sua base de dados do SQL Server e inserir algumas entradas de exemplo na tabela.

  1. Inicie o SQL Server Management Studio. Se ainda não estiver instalado no seu computador, aceda a Transferir o SQL Server Management Studio.

  2. Utilize as suas credenciais para se ligar à sua instância do SQL Server.

  3. Crie uma base de dados de exemplo. Na vista de árvore, clique com o botão direito do rato em Bases de Dados e selecione Nova Base de Dados.

  4. Na janela Nova Base de Dados, introduza um nome para a base de dados e selecione OK.

  5. Para criar a tabela emp e inserir alguns dados de exemplo na mesma, execute o script de consulta seguinte na base de dados. Na vista de árvore, clique com o botão direito do rato na base de dados que criou e selecione Nova Consulta.

     CREATE TABLE dbo.emp
     (
         ID int IDENTITY(1,1) NOT NULL,
         FirstName varchar(50),
         LastName varchar(50)
     )
     GO
    
     INSERT INTO emp (FirstName, LastName) VALUES ('John', 'Doe')
     INSERT INTO emp (FirstName, LastName) VALUES ('Jane', 'Doe')
     GO
    

Conta de armazenamento do Azure

Neste tutorial, utiliza uma conta de armazenamento do Azure para fins gerais (mais concretamente, o Armazenamento de blobs) como arquivo de dados de destino/sink. Se não tiver uma conta de armazenamento do Azure para fins gerais, veja Criar uma conta de armazenamento. O pipeline no data factory que você cria neste tutorial copia dados do banco de dados do SQL Server (origem) para o armazenamento de Blob (coletor).

Obter o nome e a chave da conta de armazenamento

Utilize o nome e a chave da sua conta de armazenamento neste tutorial. Para obter o nome e a chave da sua conta de armazenamento, siga os passos seguintes:

  1. Inicie sessão no portal do Azure com o seu nome de utilizador e a palavra-passe do Azure.

  2. No painel esquerdo, selecione Todos os serviços. Utilize a palavra-chave Armazenamento para filtrar e selecione Contas de armazenamento.

    Procurar conta de armazenamento

  3. Na lista de contas de armazenamento, filtre sua conta de armazenamento, se necessário. Em seguida, selecione a sua conta de armazenamento.

  4. Na janela Conta de armazenamento, selecione Chaves de acesso.

  5. Nas caixas Nome da conta de armazenamento e key1, copie os valores e cole-os no Bloco de notas ou noutro editor, para utilizar mais adiante no tutorial.

Criar o contentor adftutorial

Nesta secção, vai criar um contentor de blobs com o nome adftutorial no seu Armazenamento de blobs.

  1. Na janela Conta de armazenamento , vá para Visão geral e selecione Contêineres.

    Selecionar a opção Blobs

  2. Na janela Contêineres, selecione + Contêiner para criar um novo.

  3. Na janela Novo contentor, em Nome, introduza adftutorial. Depois, selecione Criar.

  4. Na lista de contêineres, selecione adftutorial que você acabou de criar.

  5. Mantenha a janela do contentor de adftutorial aberta. Você usá-lo para verificar a saída no final do tutorial. O Data Factory cria automaticamente a pasta de saída neste contentor, pelo que não precisa de a criar.

Criar uma fábrica de dados

Neste passo, vai criar uma fábrica de dados e iniciar a IU do Data Factory para criar um pipeline na fábrica de dados.

  1. Abra o browser Microsoft Edge ou Google Chrome. Atualmente, a IU do Data Factory é suportada apenas nos browsers Microsoft Edge e Google Chrome.

  2. No menu à esquerda, selecione Criar um recurso>Integration>Data Factory:

    Seleção do Data Factory no

  3. Na página Nova fábrica de dados, em Nome, introduza ADFTutorialDataFactory.

    O nome da fábrica de dados tem de ser globalmente exclusivo. Se vir a seguinte mensagem de erro no campo de nome, altere o nome da fábrica de dados (por exemplo, oseunomeADFTutorialDataFactory). Para obter as regras de nomenclatura dos artefactos do Data Factory, veja Regras de nomenclatura do Data Factory.

    Nova mensagem de erro de fábrica de dados para nome duplicado.

  4. Selecione a subscrição do Azure na qual quer criar a fábrica de dados.

  5. Em Grupo de Recursos, efetue um destes passos:

  6. Em Versão, selecione V2.

  7. Em Localização, selecione a localização para a fábrica de dados. Só aparecem na lista pendente as localizações que são suportadas. Os arquivos de dados (por exemplo, o Armazenamento e a Base de Dados SQL) e as computações (por exemplo, o Azure HDInsight) que o Data Factory utiliza podem estar noutras regiões.

  8. Selecione Criar.

  9. Depois de concluída a criação, vai ver a página Data Factory, conforme mostrado na imagem:

    Home page para o Azure Data Factory, com o bloco Open Azure Data Factory Studio.

  10. Selecione Abrir no bloco Abrir o Azure Data Factory Studio para iniciar a interface do usuário do Data Factory em uma guia separada.

Criar um pipeline

  1. Na home page do Azure Data Factory, selecione Orquestrar. É criado um pipeline automaticamente por si. Verá o pipeline na vista de árvore e o respetivo editor aberto.

    Captura de tela que mostra a página inicial do data factory com o botão Orchestrate realçado.

  2. No painel Geral em Propriedades, especifique SQLServerToBlobPipeline para Name. Em seguida, feche o painel clicando no ícone Propriedades no canto superior direito.

  3. Na caixa de ferramentas Atividades, expanda Mover & Transformar. Arraste e largue a atividade Copiar para a superfície de desenho do pipeline. Defina o nome da atividade como CopySqlServerToAzureBlobActivity.

  4. Na janela Propriedades, vá para o separador Origem e selecione + Novo.

  5. Na caixa de diálogo Novo Conjunto de Dados, procure SQL Server. Selecione SQL Server e, em seguida, selecione Continuar. Novo conjunto de dados SqlServer

  6. Na caixa de diálogo Definir Propriedades, em Nome, digite SqlServerDataset. Em Serviço vinculado, selecione + Novo. Neste passo, vai criar uma ligação para o arquivo de dados de origem (base de dados do SQL Server).

  7. Na caixa de diálogo Novo Serviço Vinculado, adicione Nome como SqlServerLinkedService. Em Conectar via tempo de execução de integração, selecione +Novo. Nesta secção, vai criar um integration runtime autoalojado e vai associá-lo a um computador no local com a base de dados do SQL Server. O runtime de integração autoalojado é o componente que copia os dados da base de dados do SQL Server no seu computador para o armazenamento de Blobs.

  8. Na caixa de diálogo Configuração do Tempo de Execução de Integração, selecione Auto-Hospedado e, em seguida, selecione Continuar.

  9. Em nome, digite TutorialIntegrationRuntime. Depois, selecione Criar.

  10. Em Configurações, selecione Clique aqui para iniciar a configuração expressa para este computador. Esta ação instala o runtime de integração no seu computador e regista-o no Data Factory. Em alternativa, pode utilizar a opção de configuração manual para transferir o ficheiro de instalação, executá-lo e utilizar a chave para registar o runtime de integração. Configuração do runtime de integração

  11. Na janela Configuração expressa do Integration Runtime (Self-hosted), selecione Fechar quando o processo for concluído.

    Configuração rápida do runtime de integração (autoalojado)

  12. Na caixa de diálogo Novo serviço vinculado (SQL Server), confirme se TutorialIntegrationRuntime está selecionado em Conectar via tempo de execução de integração. Em seguida, siga os seguintes passos:

    a. Em Nome, introduza SqlServerLinkedService.

    b. Em Nome do servidor, introduza o nome da instância do SQL Server.

    c. Em Nome da base de dados, introduza o nome da base de dados com a tabela emp.

    d. Em Tipo de autenticação, selecione o tipo de autenticação adequado que o Data Factory deverá utilizar para se ligar à sua base de dados do SQL Server.

    e. Em Nome de utilizador e Palavra-passe, introduza o nome de utilizador e a palavra-passe. Use mydomain\myuser como nome de usuário, se necessário.

    f. Selecione Testar ligação. Esta etapa é para confirmar se o Data Factory pode se conectar ao seu banco de dados do SQL Server usando o tempo de execução de integração auto-hospedado que você criou.

    g. Para salvar o serviço vinculado, selecione Criar.

    Novo serviço vinculado (SQL Server)

  13. Depois que o serviço vinculado for criado, você voltará para a página Definir propriedades para o SqlServerDataset. Siga estes passos:

    a. Em Serviço ligado, confirme que vê SqlServerLinkedService.

    b. Em Nome da tabela, selecione [dbo].[ emp].

    c. Selecione OK.

  14. Vá para o separador com SQLServerToBlobPipeline ou selecione SQLServerToBlobPipeline na vista de árvore.

  15. Vá para o separador Sink, na parte inferior da janela Propriedades, e selecione + Novo.

  16. Na caixa de diálogo Novo Conjunto de Dados, selecione Armazenamento de Blob do Azure. Em seguida, selecione Continuar.

  17. Na caixa de diálogo Selecionar Formato , escolha o tipo de formato dos seus dados. Em seguida, selecione Continuar.

    Seleção de formato de dados

  18. Na caixa de diálogo Definir Propriedades, digite AzureBlobDataset para Name. Junto à caixa de texto Serviço ligado, selecione + Novo.

  19. Na caixa de diálogo Novo Serviço Vinculado (Armazenamento de Blobs do Azure), digite AzureStorageLinkedService como nome, selecione sua conta de armazenamento na lista Nome da conta de armazenamento. Teste a conexão e selecione Criar para implantar o serviço vinculado.

  20. Depois que o serviço vinculado for criado, você voltará à página Definir propriedades . Selecione OK.

  21. Abra o conjunto de dados do coletor. No separador Ligação, siga os passos abaixo:

    a. Em Serviço ligado, confirme que AzureStorageLinkedService está selecionado.

    b. Em Caminho do arquivo, digite adftutorial/fromonprem para a parte Container/Directory . Se a pasta de saída não existir no contentor adftutorial, o Data Factory cria-a automaticamente.

    c. Para a parte Arquivo , selecione Adicionar conteúdo dinâmico. expressão dinâmica para resolver o nome de ficheiro

    d. Adicione @CONCAT(pipeline().RunId, '.txt')e, em seguida, selecione Concluir. Essa ação renomeará o arquivo com PipelineRunID.txt.

  22. Vá para o separador com o pipeline aberto ou selecione o pipeline na vista de árvore. Em Conjunto de Dados de Sink, confirme que AzureBlobDataset está selecionado.

  23. Para validar as definições do pipeline, selecione Validar na barra de ferramentas do mesmo. Para fechar a saída de validação do pipe, selecione o >> ícone. validar pipeline

  24. Para publicar entidades criadas no Data Factory, selecione Publicar tudo.

  25. Aguarde até ver o pop-up Publicação concluída . Para verificar o status da publicação, selecione o link Mostrar notificações na parte superior da janela. Para fechar a janela de notificação, selecione Fechar.

Acionar uma execução de pipeline

Selecione Adicionar gatilho na barra de ferramentas do pipeline e, em seguida, selecione Gatilho agora.

Monitorizar a execução do pipeline.

  1. Vá para a guia Monitor. Você vê o pipeline acionado manualmente na etapa anterior.

  2. Para exibir as execuções de atividade associadas à execução do pipeline, selecione o link SQLServerToBlobPipeline em PIPELINE NAME. Monitorizar execuções de pipeline

  3. Na página Execuções de atividade, selecione o link Detalhes (imagem de óculos) para ver detalhes sobre a operação de cópia. Para voltar à visualização Execuções de pipeline, selecione Todas as execuções de pipeline na parte superior.

Verificar a saída

O pipeline cria automaticamente a pasta de saída com o nome fromonprem no contentor de blobs adftutorial. Confirme que consegue ver o ficheiro [pipeline().RunId].txt na pasta de saída.

O pipeline neste exemplo copia dados de uma localização para outra localização no amazenamento de Blobs. Aprendeu a:

  • Criar uma fábrica de dados.
  • Criar um integration runtime autoalojado.
  • Criar serviços ligados do SQL Server e do Armazenamento.
  • Criar conjuntos de dados do SQL Server e do armazenamento de Blobs.
  • Criar um pipeline com uma atividade de cópia para mover os dados.
  • Iniciar uma execução de pipeline.
  • Monitorizar a execução do pipeline.

Para obter uma lista dos arquivos de dados que o Data Factory suporta, veja Arquivos de dados suportados.

Para saber como copiar dados em massa de uma origem para um destino, avance para o tutorial seguinte: