Transformação de origem em fluxo de dados de mapeamento

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!

Os fluxos de dados estão disponíveis nos pipelines do Azure Data Factory e do Azure Synapse. Este artigo se aplica ao fluxo de dados de mapeamento. Se você for iniciante nas transformações, veja o artigo introdutório Transformar dados usando um fluxo de dados de mapeamento.

Uma transformação de origem configura a sua origem de dados para o fluxo de dados. Ao criar fluxos de dados, a sua primeira etapa sempre será configurar uma transformação de origem. Para adicionar uma origem, selecione a caixa Adicionar origem no painel da tela do fluxo de dados.

Cada fluxo de dados requer pelo menos uma transformação de coletor, mas é possível adicionar tantas origens quanto forem necessárias para concluir as transformações de dados. Você pode associar essas origens com uma transformação de junção, pesquisa ou união.

Cada transformação de origem é associada a exatamente um conjunto de dados ou serviço vinculado. O conjunto de dados determina a forma e a localização na qual você deseja gravar ou ler os dados. Se você usar um conjuntos de dados baseado em arquivo, poderá usar caracteres curingas e listas de arquivos em sua origem para trabalhar com mais de um arquivo por vez.

Conjuntos de valores embutidos

A primeira decisão que você tomar ao criar uma transformação de origem é se as informações de origem são definidas dentro de um objeto de conjuntos de dados ou dentro de uma transformação de origem. A maioria dos formatos está disponível somente em um ou outro. Para saber como usar um conector específico, consulte o documento do conector apropriado.

Quando um formato de objeto, tanto embutido quanto de um conjunto de dados têm suporte, há benefícios para ambos. Os objetos conjunto de dados são entidades reutilizáveis que podem ser usadas em outros fluxos de dados e atividades como Copy. Essas entidades reutilizáveis são especialmente úteis ao usar um esquema protegido. Conjuntos de dados não são baseados no Spark. Ocasionalmente, talvez seja necessário substituir certas configurações ou projeção de esquema na transformação de origem.

Os conjuntos de dados embutidos são recomendados quando são usados esquemas flexíveis, instâncias de origem única ou com origens parametrizadas. Se sua origem for muito parametrizada, os conjuntos de origes embutidas permitem não criar um objeto "fictício". Os conjuntos de dados embutidos são baseados no Spark e suas propriedades são nativas ao fluxo de dados.

Para usar um conjunto de dados embutidos, selecione o formato desejado no seletor de Tipo de origem. Em vez de selecionar um conjunto de dados de origem, selecione o serviço vinculado ao qual deseja se conectar.

Opções de esquema

Como um conjunto de dados embutido é definido no fluxo de dados, não há um esquema definido associado ao conjunto de dados embutido. Na guia Projeção, você pode importar o esquema de dados de origem e armazenar esse esquema como sua projeção de origem. Nessa guia, você encontrará um botão "Opções de esquema" que permite definir o comportamento do serviço de descoberta de esquema do ADF.

  • Use o esquema projetado: essa opção é útil quando você tem um grande número de arquivos de origem que o ADF examinará como sua origem. O comportamento padrão do ADF é descobrir o esquema de cada arquivo de origem. No entanto, se você tiver uma projeção predefinida já armazenada em sua transformação de origem, poderá definir isso como true e o ADF ignorará a descoberta automática de cada esquema. Com essa opção ativada, a transformação de origem pode ler todos os arquivos de maneira muito mais rápida, aplicando o esquema predefinido a cada arquivo.
  • Permitir descompasso de esquema: ative o descompasso de esquema para que o fluxo de dados permita novas colunas que ainda não estão definidas no esquema de origem.
  • Validar esquema: a configuração dessa opção causará falha no fluxo de dados se qualquer coluna e tipo definidos na projeção não corresponderem ao esquema descoberto dos dados de origem.
  • Inferir tipos de colunas com descompasso: quando novas colunas com descompasso forem identificadas pelo ADF, essas novas colunas serão convertidas para o tipo de dados apropriado usando a inferência de tipo automático do ADF.

Captura de tela que mostra Embutido selecionado.

BD do Workspace (somente workspaces do Synapse)

Nos workspaces do Azure Synapse, uma opção adicional está presente em transformações de fonte de fluxo de dados chamadas Workspace DB. Isso permitirá que você escolha diretamente um banco de dados de workspace de qualquer tipo disponível como seus dados de origem sem exigir serviços ou conjuntos de dados vinculados adicionais. Os bancos de dados criados por meio dos modelos de base de dados do Azure Synapse também podem ser acessados quando você seleciona o Banco de Dados do Workspace.

Captura de tela que mostra o workspacedb selecionado.

Tipos de fontes com suporte

O fluxo de dados de mapeamento segue uma abordagem de ELT (extração, carregamento, transformação) e funciona com conjuntos de dados de preparo que estão todos no Azure. Atualmente, os seguintes conjuntos de dados podem ser usados em uma transformação de origem.

Connector Formatar Conjunto de dados/Embutido
Amazon S3 Avro
Texto delimitado
Delta
Excel
JSON
ORC
Parquet
XML
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
Appfigures (versão prévia) -/✓
Asana (versão prévia) -/✓
Armazenamento de Blobs do Azure Avro
Texto delimitado
Delta
Excel
JSON
ORC
Parquet
XML
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
Azure Cosmos DB para NoSQL ✓/-
Azure Data Lake Storage Gen1 Avro
Texto delimitado
Excel
JSON
ORC
Parquet
XML
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
Azure Data Lake Storage Gen2 Avro
Common Data Service
Texto delimitado
Delta
Excel
JSON
ORC
Parquet
XML
✓/✓
-/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
Banco de Dados do Azure para MySQL ✓/✓
Banco de Dados do Azure para PostgreSQL ✓/✓
Azure Data Explorer ✓/✓
Banco de Dados SQL do Azure ✓/✓
Instância Gerenciada do SQL do Azure ✓/✓
Azure Synapse Analytics ✓/✓
data.world (versão prévia) -/✓
Dataverse ✓/✓
Dynamics 365 ✓/✓
Dynamics CRM ✓/✓
Google Sheets (versão prévia) -/✓
Hive -/✓
Quickbase (versão prévia) -/✓
SFTP Avro
Texto delimitado
Excel
JSON
ORC
Parquet
XML
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
✓/✓
Smartsheet (versão prévia) -/✓
Snowflake ✓/✓
SQL Server ✓/✓
REST ✓/✓
TeamDesk (versão prévia) -/✓
Twilio (versão prévia) -/✓
Zendesk (versão prévia) -/✓

As configurações específicas para esses conectores estão localizadas na guia Opções de fontes. Exemplos de script de fluxo de dados e informações dessas configurações estão localizados na documentação do conector.

Os pipelines do Azure Data Factory e do Synapse têm acesso a mais de 90 conectores nativos. Para incluir dados de outras fontes no seu fluxo de dados, use a atividade Copy para carregar esses dados em uma das áreas de preparo com suporte.

Configurações de origem

Depois de adicionar uma fonte, configure por meio da guia configurações de fontes. Aqui, você pode escolher ou criar o conjunto de dados de seus pontos de origem em. Você também pode selecionar opções de esquema e amostragem para seus dados.

Os valores de desenvolvimento para parâmetros de conjunto de dados podem ser definidos em Configurações de depuração. (O modo de depuração deve estar ativado.)

Captura de tela que mostra a guia Configurações de fonte.

Nome do fluxo de saída: o nome da transformação de fonte.

Tipo de fonte: escolha se deseja usar um conjunto de dados em linha ou um objeto de conjunto de dados existente.

Testar a conexão:t este se o serviço Spark do fluxo de dados pode se conectar com êxito ao serviço vinculado usado no seu conjuntos de dados de origem. O modo de depuração deve estar ativado para que esse recurso seja habilitado.

Descompasso de esquema: o descompasso de esquema é a capacidade do serviço de lidar, de forma nativa, com esquemas flexíveis em seus fluxos de dados, sem a necessidade de definir explicitamente as alterações de coluna.

  • Marque a caixa de seleção Permitir o descompasso de esquema se as colunas de origem forem alteradas com frequência. Essa configuração permitirá que todos os campos de entrada da fonte fluam pelas transformações para o coletor.

  • Selecionar Inferir tipos de coluna descompassadas instrui o serviço para detectar e definir tipos de dados para cada nova coluna descoberta. Com esse recurso desativado, todas as colunas descompassadas serão do tipo cadeia de caracteres.

Validar esquema: se Validar esquema estiver selecionado, o fluxo de dados não será executado se os dados de origem de entrada não corresponderem ao esquema definido do conjuntos de dados.

Ignorar contagem de linhas: o campo Ignorar contagem de linhas especifica quantas linhas ignorar no início do conjuntos de dados.

Amostragem: habilite a amostragem para limitar o número de linhas de sua fonte. Use essa configuração ao testar ou amostrar dados de sua fonte para fins de depuração. Isso é muito útil ao executar fluxos de dados no modo de depuração de um pipeline.

Para validar se a fonte está configurada corretamente, a ligue o modo de depuração e busque uma visualização de dados. Para saber mais, consulte Modo de depuração.

Observação

Quando o modo de depuração estiver ativado, a configuração do limite de linha nas configurações de depuração substituirá a configuração de amostragem na fonte de dados durante a visualização de dados.

Opções de origem

A guiaOpções de fonte contém configurações específicas para o conector e o formato escolhidos. Para obter mais informações e exemplos, consulte adocumentação do conector relevante. Isso inclui detalhes como o nível de isolamento para as fontes de dados que dão suporte a ele (como SQL Servers locais, Bancos de Dados SQL do Azure e instâncias gerenciadas de SQL do Azure) e outras configurações específicas da fonte de dados também.

Projeção

Semelhante aos esquemas em conjuntos de dados, a Projeção na fonte define as colunas de dados, os tipos de dados e os formatos de dados dos dados de origem. Para a maioria dos tipos de conjunto de conjuntos, como SQL e Parquet, a projeção em uma fonte é fixada para refletir o esquema definido em um conjunto de um DataSet. Quando os tipos de arquivos de origem não são fortemente definidos (por exemplo, arquivos. csv simples em vez de arquivos parquet), você pode definir os tipos de dados para cada campo na transformação de origem.

Captura de tela que mostra as configurações na guia projeção.

Se o arquivo de texto não tiver um esquema definido, selecione Detectar tipo de dados para que o serviço venha a obter exemplos e inferir os tipos de dados. Selecione definir formato padrão para detectar automaticamente os formatos de dados padrão.

Redefinir esquema redefine a projeção para o que é definido no conjunto de valores referenciado.

Substituir esquema permite que você modifique os tipos de dados projetados aqui na origem, substituindo os tipos de dados definidos pelo esquema. Como alternativa, você pode modificar os tipos de dados de coluna em uma transformação de Coluna Derivada subsequente. Use uma transformação selecionar para modificar os nomes de coluna.

Importar esquema

Selecione o botão importar esquema na guia projeção para usar um cluster de depuração ativo para criar uma projeção de esquema. Ele está disponível em todos os tipos de fonte. A importação do esquema aqui substituirá a projeção definida no conjunto de dados. O objeto DataSet não será alterado.

A importação de esquema é útil em conjuntos de dados, como Avro e Azure Cosmos DB, que dão suporte a estruturas de dados complexas que não exigem definições de esquema para existir no DataSet. Para conjuntos de valores embutidos, a importação de esquema é a única maneira de fazer referência a metadados de coluna sem descompasso de esquema.

Otimizar a transformação de origem

A guia otimizar permite a edição de informações de partição em cada etapa de transformação. Na maioria dos casos, o uso do particionamento atual otimizará a estrutura de particionamento ideal para uma origem.

Se você estiver lendo de uma fonte do Banco de Dados SQL do Azure, o particionamento de origem personalizado provavelmente lerá os dados mais rapidamente. O serviço lerá consultas grandes, fazendo conexões com seu banco de dados em paralelo. Esse particionamento de origem pode ser feito em uma coluna ou usando uma consulta.

Captura de tela que mostra as configurações de partição de origem.

Para obter mais informações sobre a otimização no fluxo de dados de mapeamento, consulte a guia otimizar.

Comece a criar seu fluxo de dados com uma transformação de coluna derivada e umatransformação de seleção.