Compartilhar via


Conjuntos de dados em Azure Data Factory e Azure Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Data Factory no Microsoft Fabric é a próxima geração de Azure Data Factory, com uma arquitetura mais simples, IA interna e novos recursos. Se você não estiver familiarizado com a integração de dados, comece com Fabric Data Factory. As cargas de trabalho existentes do ADF podem ser atualizadas para Fabric para acessar novos recursos em ciência de dados, análise em tempo real e relatórios.

Este artigo descreve o que são conjuntos de dados, como eles são definidos no formato JSON e como eles são usados em pipelines Azure Data Factory e Synapse.

Se você for novo no Data Factory, consulte Introduction para Azure Data Factory para obter uma visão geral. Para obter mais informações sobre Azure Synapse, consulte O que é Azure Synapse

Visão geral

Um workspace do Azure Data Factory ou do Synapse pode ter um ou mais pipelines. Um pipeline é um agrupamento lógico de atividades que juntas executam uma tarefa. As atividades em um pipeline definem ações para serem executadas nos seus dados. Por outro lado, um conjunto de dados é uma exibição nomeada de dados que simplesmente aponta ou faz referência aos dados que você deseja usar em suas atividades como entradas e saídas. Conjuntos de dados identificam dados em armazenamentos de dados diferentes, como tabelas, arquivos, pastas e documentos. Por exemplo, um conjunto de dados do Azure Blob especifica o contêiner e a pasta no Armazenamento de Blobs dos quais a atividade deve ler os dados.

Antes de criar um conjunto de dados, crie um serviço vinculado para vincular seu armazenamento de dados ao serviço. Serviços vinculados são como cadeias de conexão, que definem as informações de conexão necessárias para que o serviço se conecte a recursos externos. Pense dessa maneira: o conjunto de dados representa a estrutura dos dados nos armazenamentos de dados vinculados e o serviço vinculado define a conexão à fonte de dados. Por exemplo, um serviço vinculado Armazenamento do Azure vincula uma conta de armazenamento. Um conjunto de dados Azure Blob representa o contêiner de blob e a pasta dentro da conta de Armazenamento do Azure que contém os blobs de entrada que devem ser processados.

Veja abaixo um cenário de exemplo. Para copiar dados do Armazenamento de Blobs para um Banco de Dados SQL, crie dois serviços vinculados: Armazenamento de Blobs do Azure e Banco de Dados SQL do Azure. Em seguida, crie dois conjuntos de dados: conjunto de dados texto delimitado (que se refere ao serviço vinculado Armazenamento de Blobs do Azure, supondo que você tenha arquivos de texto como origem) e SQL do Azure conjunto de dados tabela (que se refere ao serviço vinculado Banco de Dados SQL do Azure). Os serviços vinculados do Armazenamento de Blobs do Azure e do Banco de Dados SQL do Azure contêm cadeias de caracteres de conexão que o serviço usa em runtime para se conectar respectivamente ao Armazenamento do Azure e ao Banco de Dados SQL do Azure. O conjunto de dados de texto delimitado especifica o contêiner de blob e a pasta de blob que contém os blobs de entrada no Armazenamento de Blobs, juntamente com as configurações relacionadas ao formato. O conjunto de dados de Tabela do SQL do Azure especifica a tabela SQL no seu banco de dados SQL para a qual os dados devem ser copiados.

O seguinte diagrama mostra a relação entre pipeline, atividade, conjunto de dados e serviço vinculado:

Relação entre pipeline, atividade e conjunto de dados, serviços vinculados

Criar um conjunto de dados com a UI

Para criar um conjunto de dados com o Azure Data Factory Studio, selecione a guia Autor (com o ícone de lápis) e, em seguida, o ícone de sinal de adição, para escolher Dataset.

Mostra a guia Autor do Azure Data Factory Studio com o botão novo conjunto de dados selecionado.

Você verá a nova janela do conjunto de dados para escolher qualquer um dos conectores disponíveis no Azure Data Factory, para configurar um serviço vinculado existente ou novo.

Mostra a nova janela do conjunto de dados em que você pode escolher o tipo de serviço vinculado para qualquer um dos conectores de data factory com suporte.

Em seguida, você será solicitado a escolher o formato do conjunto de dados.

Mostra a janela de formato do conjunto de dados, permitindo que você escolha um formato para o novo conjunto de dados.

Por fim, você pode escolher um serviço vinculado existente do tipo selecionado para o conjunto de dados ou criar um, se nenhum estiver definido.

Mostra a janela definir propriedades em que você pode escolher um conjunto de dados existente do tipo selecionado anteriormente ou criar um novo.

Depois de criar o conjunto de dados, você pode usá-lo em qualquer pipeline no Azure Data Factory.

Conjunto de dados JSON

Um conjunto de dados é definido no seguinte formato JSON:

{
    "name": "<name of dataset>",
    "properties": {
        "type": "<type of dataset: DelimitedText, AzureSqlTable etc...>",
        "linkedServiceName": {
                "referenceName": "<name of linked service>",
                "type": "LinkedServiceReference",
        },
        "schema":[

        ],
        "typeProperties": {
            "<type specific property>": "<value>",
            "<type specific property 2>": "<value 2>",
        }
    }
}

A tabela a seguir descreve as propriedades no JSON acima:

Propriedade Descrição Obrigatório
nome Nome do conjunto de dados. Confira Regras de Nomenclatura. Sim
tipo Tipo de conjunto de dados. Especifique um dos tipos com suporte no Data Factory (por exemplo: DelimitedText, AzureSqlTable).

Para obter detalhes, consulte Tipos de conjunto de dados.
Sim
esquema O esquema do dataset representa o tipo de dados físicos e a forma. Não
typeProperties As propriedades de tipo são diferentes para cada tipo. Para obter detalhes sobre os tipos com suporte e suas propriedades, consulte Tipo de conjunto de dados. Sim

Quando importar o esquema de um conjunto de dados, selecione o botão Importar esquema e importe da fonte ou de um arquivo local. Na maioria dos casos, você importará o esquema diretamente da fonte. Mas se já tiver um arquivo de esquema local (um arquivo Parquet ou CSV com cabeçalhos), você poderá instruir o serviço a basear-se no esquema nesse arquivo.

Em atividade de cópia, os conjuntos de dados são utilizados em fonte e destino. O esquema definido em DataSet é opcional como referência. Se você quiser aplicar o mapeamento de coluna/campo entre a origem e o coletor, consulte esquema e mapeamento de tipo.

Em Fluxo de Dados, os conjuntos de dados são usados em transformações de origem e destino. Os conjuntos de dados definem os esquemas de dados básicos. Se os dados não tiverem um esquema, use o descompasso de esquema para a fonte e o coletor. Os metadados dos conjuntos de dados aparecem na transformação de origem como a projeção de origem. A projeção na transformação de origem representa os dados Fluxo de Dados com nomes e tipos definidos.

Tipo de conjunto de dados

O serviço dá suporte a muitos tipos diferentes de conjuntos de dados, dependendo dos armazenamentos que você usa. Você pode encontrar a lista de armazenamentos de dados com suporte no artigo Visão geral do conector. Selecione um armazenamento de dados para saber como criar um serviço vinculado e um conjunto de dados para ele.

Por exemplo, para um conjunto de texto delimitado, o tipo DataSet é definido como DelimitedText, conforme mostrado no exemplo de JSON a seguir:

{
    "name": "DelimitedTextInput",
    "properties": {
        "linkedServiceName": {
            "referenceName": "AzureBlobStorage",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "DelimitedText",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "fileName": "input.log",
                "folderPath": "inputdata",
                "container": "adfgetstarted"
            },
            "columnDelimiter": ",",
            "escapeChar": "\\",
            "quoteChar": "\""
        },
        "schema": []
    }
}

Observação

O valor do esquema é definido usando a sintaxe JSON. Para obter informações mais detalhadas sobre mapeamento de esquema e mapeamento de tipo de dados, consulte a documentação Azure Data Factory Esquema de Atividade de Cópia e Mapeamento de Tipo.

Criar conjuntos de dados

Você pode criar conjuntos de dados usando uma dessas ferramentas ou SDKs: .NET API, PowerShell, REST API, Azure Resource Manager Template e Azure portal

Conjuntos de dados da versão atual vs. versão 1

Aqui estão algumas diferenças entre os conjuntos de dados na versão atual do Data Factory (e Azure Synapse) e o Data Factory herdado versão 1:

  • A propriedade externa não é suportada na versão atual. É substituído por um gatilho.
  • As propriedades de política e disponibilidade não são suportadas na versão atual. A hora de início de um pipeline depende de gatilhos.
  • Os conjuntos de dados com escopo (conjuntos de dados definidos em um pipeline) não são compatíveis com a versão atual.

Inícios rápidos

Consulte os seguintes tutoriais para obter instruções passo a passo para criar pipelines e conjuntos de dados usando uma destas ferramentas ou SDKs.

Referências de esquema de conjunto de dados