Partilhar via


Copiar dados de forma segura do armazenamento de Blobs do Azure para uma base de dados SQL com pontos finais privados

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 tudo, desde o movimento de dados à ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

Neste tutorial, vai criar uma fábrica de dados com a interface de utilizador (IU) do Azure Data Factory. O pipeline nesta fábrica de dados copia dados de forma segura do armazenamento de Blobs do Azure para uma base de dados de SQL do Azure (ambas permitindo o acesso apenas a redes selecionadas) através de pontos finais privados no Azure Data Factory Rede Virtual Geridos. O padrão de configuração neste tutorial aplica-se à cópia a partir de um arquivo de dados baseado em ficheiros para um arquivo de dados relacional. Para obter uma lista dos arquivos de dados suportados como origens e sinks, veja a tabela Arquivos e formatos de dados suportados .

Nota

Se não estiver familiarizado com o Data Factory, veja Introdução ao Azure Data Factory.

Neste tutorial, vai executar os seguintes passos:

  • Criar uma fábrica de dados.
  • Criar um pipeline com uma atividade de cópia.

Pré-requisitos

  • Subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta do Azure gratuita antes de começar.
  • Conta de armazenamento do Azure. Utilize o Armazenamento de blobs como um arquivo dos dados de origem. Se não tiver uma conta de armazenamento, veja Criar uma conta de armazenamento do Azure para seguir os passos para criar uma. Certifique-se de que a conta de armazenamento permite o acesso apenas a partir de redes selecionadas.
  • Base de Dados SQL do Azure. Pode utilizar a base de dados como um arquivo de dados sink. Se não tiver uma base de dados SQL do Azure, veja Criar uma base de dados SQL para obter os passos para criar uma. Certifique-se de que a conta Base de Dados SQL permite o acesso apenas a partir de redes selecionadas.

Criar um blob e uma tabela SQL

Agora, prepare o armazenamento de blobs e a base de dados SQL para o tutorial ao executar os seguintes passos.

Criar um blob de origem

  1. Abra o Bloco de Notas. Copie o texto seguinte e guarde-o como um ficheiro emp.txt no disco:

    FirstName,LastName
    John,Doe
    Jane,Doe
    
  2. Crie um contentor com o nome adftutorial no armazenamento de blobs. Crie uma pasta com o nome input neste contentor. Em seguida, carregue o ficheiro emp.txt para a pasta input. Utilize o portal do Azure ou ferramentas como o Explorador de Armazenamento do Azure para realizar estas tarefas.

Criar uma tabela SQL sink

Utilize o seguinte script SQL para criar a tabela dbo.emp na sua base de dados SQL:

CREATE TABLE dbo.emp
(
    ID int IDENTITY(1,1) NOT NULL,
    FirstName varchar(50),
    LastName varchar(50)
)
GO

CREATE CLUSTERED INDEX IX_emp_ID ON dbo.emp (ID);

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 Microsoft Edge ou o Google Chrome. Atualmente, apenas os browsers Microsoft Edge e Google Chrome suportam a IU do Data Factory.

  2. No menu esquerdo, selecione Criar um recurso>Analytics>Data Factory.

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

    O nome da fábrica de dados do Azure tem de ser globalmente exclusivo. Se receber uma mensagem de erro sobre o valor do nome, introduza um nome diferente para a 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.

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

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

    • Selecione Utilizar existente e selecione um grupo de recursos já existente na lista pendente.
    • Selecione Criar novo e introduza o nome de um grupo de recursos.

    Para saber mais sobre grupos de recursos, veja Utilizar grupos de recursos para gerir os recursos do Azure.

  6. Em Versão, selecione V2.

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

  8. Selecione Criar.

  9. Após a conclusão da criação, verá o aviso no Centro de notificações. Selecione Ir para recurso para aceder à página Data Factory .

  10. Selecione Abrir no mosaico Abrir Azure Data Factory Studio para iniciar a IU do Data Factory num separador separador.

Criar um runtime de integração do Azure no Data Factory Managed Rede Virtual

Neste passo, vai criar um runtime de integração do Azure e ativar a Rede Virtual Gerida do Data Factory.

  1. No portal do Data Factory, aceda a Gerir e selecione Novo para criar um novo runtime de integração do Azure.

    Captura de ecrã que mostra a criação de um novo runtime de integração do Azure.

  2. Na página Configuração do runtime de integração , escolha o runtime de integração a criar com base nas capacidades necessárias. Neste tutorial, selecione Azure, Autoalojado e, em seguida, clique em Continuar.

  3. Selecione Azure e, em seguida, clique em Continuar para criar um runtime de Integração do Azure.

    Captura de ecrã a mostrar um novo runtime de integração do Azure.

  4. Em Configuração da rede virtual (Pré-visualização), selecione Ativar.

    Captura de ecrã que mostra a ativação de um novo runtime de integração do Azure.

  5. Selecione Criar.

Criar um pipeline

Neste passo, vai criar um pipeline com uma atividade de cópia na fábrica de dados. A atividade de cópia copia os dados do Armazenamento de blobs para a Base de Dados SQL. No Tutorial de início rápido, seguiu os passos abaixo para criar um pipeline:

  1. Criar o serviço ligado.
  2. Criar os conjuntos de dados de entrada e saída.
  3. Criar um pipeline.

Neste tutorial, vai começar por criar um pipeline. Em seguida, vai criar serviços ligados e conjuntos de dados quando forem necessários para configurar o pipeline.

  1. Na home page, selecione Orquestrar.

    Captura de ecrã a mostrar a home page da fábrica de dados com o botão Orquestrar realçado.

  2. No painel de propriedades do pipeline, introduza CopyPipeline para o nome do pipeline.

  3. Na caixa de ferramentas Atividades , expanda a categoria Mover e Transformar e arraste a atividade Copiar dados da caixa de ferramentas para a superfície do estruturador do pipeline. Introduza CopyFromBlobToSql no nome.

    Captura de ecrã que mostra a atividade de cópia.

Configurar uma origem

Dica

Neste tutorial, vai utilizar a Chave de conta como o tipo de autenticação do arquivo de dados de origem. Também pode escolher outros métodos de autenticação suportados, como o URI de SAS, o Principal de Serviço e a Identidade Gerida , se necessário. Para obter mais informações, veja as secções correspondentes em Copiar e transformar dados no armazenamento de Blobs do Azure com Azure Data Factory.

Para armazenar segredos de arquivos de dados de forma segura, também recomendamos que utilize o Azure Key Vault. Para obter mais informações e ilustrações, veja Armazenar credenciais no Azure Key Vault.

Criar um conjunto de dados de origem e um serviço ligado

  1. Aceda ao separador Origem . Selecione + Novo para criar um conjunto de dados de origem.

  2. Na caixa de diálogo Novo Conjunto de Dados, selecione Armazenamento de Blobs do Azure e, em seguida, selecione Continuar. A origem de dados está num Armazenamento de blobs, pelo que vai selecionar o Armazenamento de Blobs do Azure para o conjunto de dados de origem.

  3. Na caixa de diálogo Selecionar Formato , selecione o tipo de formato dos seus dados e, em seguida, selecione Continuar.

  4. Na caixa de diálogo Definir Propriedades , introduza SourceBlobDataset para Nome. Selecione a caixa de verificação para Primeira linha como cabeçalho. Na caixa de texto Serviço ligado , selecione + Novo.

  5. Na caixa de diálogo Novo serviço ligado (Armazenamento de Blobs do Azure), introduza AzureStorageLinkedService como Nome e selecione a sua conta de armazenamento na lista Nome da conta de armazenamento.

  6. Certifique-se de que ativa a criação interativa. Pode demorar cerca de um minuto a ser ativado.

    Captura de ecrã a mostrar a criação interativa.

  7. Selecione Testar ligação. Deve falhar quando a conta de armazenamento permite o acesso apenas a partir de Redes selecionadas e requer que o Data Factory crie um ponto final privado para o mesmo que deve ser aprovado antes de o utilizar. Na mensagem de erro, deverá ver uma ligação para criar um ponto final privado que pode seguir para criar um ponto final privado gerido. Uma alternativa é aceder diretamente ao separador Gerir e seguir as instruções na secção seguinte para criar um ponto final privado gerido.

    Nota

    O separador Gerir pode não estar disponível para todas as instâncias da fábrica de dados. Se não o vir, pode aceder a pontos finais privados ao selecionar PontoFinal Privadodas Ligações> de Autor>.

  8. Mantenha a caixa de diálogo aberta e, em seguida, aceda à sua conta de armazenamento.

  9. Siga as instruções nesta secção para aprovar a ligação privada.

  10. Voltar para a caixa de diálogo. Selecione Testar ligação novamente e selecione Criar para implementar o serviço ligado.

  11. Após a criação do serviço ligado, este regressa à página Definir propriedades . Junto a Caminho do ficheiro, selecione Procurar.

  12. Aceda à pasta adftutorial/input , selecione o ficheiro emp.txt e, em seguida, selecione OK.

  13. Selecione OK. Vai automaticamente para a página do pipeline. No separador Origem , confirme que SourceBlobDataset está selecionado. Para pré-visualizar os dados nesta página, selecione Pré-visualizar dados.

    Captura de ecrã que mostra o conjunto de dados de origem.

Criar um ponto final privado gerido

Se não tiver selecionado a hiperligação quando testou a ligação, siga o caminho. Agora, tem de criar um ponto final privado gerido que irá ligar ao serviço ligado que criou.

  1. Aceda ao separador Gerir .

    Nota

    O separador Gerir pode não estar disponível para todas as instâncias do Data Factory. Se não o vir, pode aceder a pontos finais privados ao selecionar PontoFinal Privadodas Ligações> de Autor>.

  2. Aceda à secção Pontos finais privados geridos .

  3. Selecione + Novo em Pontos finais privados geridos.

    Captura de ecrã que mostra o botão Novos pontos finais privados geridos.

  4. Selecione o mosaico Armazenamento de Blobs do Azure na lista e selecione Continuar.

  5. Introduza o nome da conta de armazenamento que criou.

  6. Selecione Criar.

  7. Após alguns segundos, deverá ver que a ligação privada criada precisa de uma aprovação.

  8. Selecione o ponto final privado que criou. Pode ver uma hiperligação que o levará a aprovar o ponto final privado ao nível da conta de armazenamento.

    Captura de ecrã a mostrar o painel Ponto final privado gerido.

  1. Na conta de armazenamento, aceda a Ligações de ponto final privado na secção Definições .

  2. Selecione a caixa de verificação do ponto final privado que criou e selecione Aprovar.

    Captura de ecrã que mostra o botão Aprovar para o ponto final privado.

  3. Adicione uma descrição e selecione sim.

  4. Voltar para a secção Pontos finais privados geridos do separador Gerir no Data Factory.

  5. Após cerca de um ou dois minutos, deverá ver a aprovação do ponto final privado aparecer na IU do Data Factory.

Configurar um sink

Dica

Neste tutorial, vai utilizar a autenticação SQL como o tipo de autenticação do seu arquivo de dados sink. Também pode escolher outros métodos de autenticação suportados, como o Principal de Serviço e a Identidade Gerida , se necessário. Para obter mais informações, veja secções correspondentes em Copiar e transformar dados na Base de Dados SQL do Azure com Azure Data Factory.

Para armazenar segredos para arquivos de dados de forma segura, também recomendamos que utilize o Azure Key Vault. Para obter mais informações e ilustrações, veja Armazenar credenciais no Azure Key Vault.

Criar um conjunto de dados de sink e um serviço ligado

  1. Vá para o separador Sink e selecione + Novo para criar um conjunto de dados sink.

  2. Na caixa de diálogo Novo Conjunto de Dados , introduza SQL na caixa de pesquisa para filtrar os conectores. Selecione SQL do Azure Base de Dados e, em seguida, selecione Continuar. Neste tutorial, vai copiar dados para uma base de dados SQL.

  3. Na caixa de diálogo Definir Propriedades , introduza OutputSqlDataset para Nome. Na lista pendente Serviço ligado, selecione + Novo. Os conjuntos de dados têm de estar associados a um serviço ligado. O serviço ligado tem a cadeia de ligação que o Data Factory utiliza para ligar à base de dados SQL no runtime. O conjunto de dados especifica o contentor, a pasta e o ficheiro (opcional) para os quais os dados são copiados.

  4. Na caixa de diálogo Novo serviço ligado (base de dados SQL do Azure), siga os seguintes passos:

    1. Em Name, introduza AzureSqlDatabaseLinkedService.
    2. Em Nome do servidor, selecione a sua instância do SQL Server.
    3. Certifique-se de que ativa a criação interativa.
    4. Em Nome da base de dados, selecione a sua base de dados SQL.
    5. Em Nome de utilizador, introduza o nome do utilizador.
    6. Em Palavra-passe, introduza a palavra-passe do utilizador.
    7. Selecione Testar ligação. Deverá falhar porque o SQL Server permite o acesso apenas a partir de Redes selecionadas e requer que o Data Factory crie um ponto final privado para o mesmo, que deve ser aprovado antes de o utilizar. Na mensagem de erro, deverá ver uma ligação para criar um ponto final privado que pode seguir para criar um ponto final privado gerido. Uma alternativa é aceder diretamente ao separador Gerir e seguir as instruções na secção seguinte para criar um ponto final privado gerido.
    8. Mantenha a caixa de diálogo aberta e, em seguida, aceda ao servidor SQL selecionado.
    9. Siga as instruções nesta secção para aprovar a ligação privada.
    10. Voltar para a caixa de diálogo. Selecione Testar ligação novamente e selecione Criar para implementar o serviço ligado.
  5. Vai automaticamente para a caixa de diálogo Definir Propriedades . Em Tabela, selecione [dbo].[emp]. Em seguida, selecione OK.

  6. Aceda ao separador com o pipeline e, em Conjunto de dados sink, confirme que OutputSqlDataset está selecionado.

    Captura de ecrã que mostra o separador Pipeline.

Opcionalmente, pode mapear o esquema da origem para o esquema correspondente do destino ao seguir o mapeamento do Esquema na atividade de cópia.

Criar um ponto final privado gerido

Se não tiver selecionado a hiperligação quando testou a ligação, siga o caminho. Agora, tem de criar um ponto final privado gerido que irá ligar ao serviço ligado que criou.

  1. Aceda ao separador Gerir .

  2. Aceda à secção Pontos finais privados geridos .

  3. Selecione + Novo em Pontos finais privados geridos.

    Captura de ecrã que mostra o botão Novos pontos finais privados geridos.

  4. Selecione o mosaico SQL do Azure Base de Dados na lista e selecione Continuar.

  5. Introduza o nome do servidor SQL que selecionou.

  6. Selecione Criar.

  7. Após alguns segundos, deverá ver que a ligação privada criada precisa de uma aprovação.

  8. Selecione o ponto final privado que criou. Pode ver uma hiperligação que o levará a aprovar o ponto final privado ao nível do SQL Server.

  1. No SQL Server, aceda a Ligações de ponto final privado na secção Definições .
  2. Selecione a caixa de verificação do ponto final privado que criou e selecione Aprovar.
  3. Adicione uma descrição e selecione sim.
  4. Voltar para a secção Pontos finais privados geridos do separador Gerir no Data Factory.
  5. A aprovação deve demorar um ou dois minutos para que a aprovação seja apresentada para o ponto final privado.

Depurar e publicar o pipeline

Pode depurar um pipeline antes de publicar artefactos (serviços ligados, conjuntos de dados e pipeline) no Data Factory ou no seu próprio repositório Git do Azure.

  1. Para depurar o pipeline, selecione Depurar na barra de ferramentas. Verá o estado da execução do pipeline no separador Saída, na parte inferior da janela.
  2. Depois de o pipeline poder ser executado com êxito, na barra de ferramentas superior, selecione Publicar tudo. Esta ação publica entidades (conjuntos de dados e pipelines) que criou no Data Factory.
  3. Aguarde até ver a mensagem Publicação com êxito. Para ver mensagens de notificação, selecione Mostrar Notificações no canto superior direito (botão de campainha).

Resumo

O pipeline neste exemplo copia dados do Armazenamento de blobs para Base de Dados SQL através de pontos finais privados no Data Factory Managed Rede Virtual. Aprendeu a:

  • Criar uma fábrica de dados.
  • Criar um pipeline com uma atividade de cópia.