Compartilhar via


Uso de fluxos de dados nos pipelines

Ao criar pipelines complexos com vários fluxos de dados, o fluxo lógico pode ter um grande impacto no tempo e no custo. Esta seção aborda o impacto de diferentes estratégias de arquitetura.

Execução paralela dos fluxos de dados

Ao executar vários fluxos de dados em paralelo, o serviço cria clusters Spark diferentes para cada atividade. Isso permite que cada trabalho seja isolado e executado em paralelo, mas permitirá que vários clusters sejam executados ao mesmo tempo.

Se os fluxos de dados forem executados em paralelo, é recomendável não habilitar a propriedade de vida útil do Azure IR, porque isso leva a vários pools quentes não utilizados.

Dica

Em vez de executar o mesmo fluxo de dados várias vezes em uma atividade For-each, prepare seus dados em um data lake e use um caminho curinga para processar os dados em um único fluxo de dados.

Executar fluxos de dados sequencialmente

Ao executar suas atividades de fluxo de dados em sequência, é recomendável definir uma TTL na configuração do Azure IR. O serviço reutiliza os recursos de computação e isso resulta em um tempo de inicialização de cluster mais rápido. Cada atividade ainda é isolada e recebe um novo contexto do Spark para cada execução.

Sobrecarga de um fluxo de dados único

Se você colocar toda a lógica dentro de um fluxo de dados único, o serviço executará todo o trabalho em uma única instância do Spark. Embora isso possa parecer uma maneira de reduzir custos, isso combina fluxos lógicos diferentes e pode ser difícil monitorar e depurar. Se um componente falhar, todas as outras partes do trabalho também falharão. É recomendável organizar fluxos de dados por fluxos independentes de lógica de negócios. Se o fluxo de dados ficar muito grande, dividi-lo em componentes separados facilitará o monitoramento e a depuração. Embora não haja um limite rígido no número de transformações em um fluxo de dados, quanto mais transformações, mais complexo será o trabalho.

Executar coletores em paralelo

O comportamento padrão dos coletores de fluxo de dados é executar cada coletor sequencialmente, em série, e fazer com que o fluxo de dados falhe quando um erro for encontrado no coletor. Além disso, todos os coletores são padronizados para o mesmo grupo, a menos que você acesse as propriedades de fluxo de dados e defina prioridades diferentes para os coletores.

Os fluxos de dados permitem agrupar coletores a partir da guia Propriedades de fluxo de dados no Designer de interface do usuário. É possível definir a ordem de execução dos coletores e agrupar coletores usando o mesmo número de grupo. Para ajudar a gerenciar os grupos, você pode pedir que o serviço execute coletores no mesmo grupo, em paralelo.

No pipeline, executar atividade de fluxo de dados, há uma opção para ativar o carregamento paralelo do coletor na seção "Propriedades do coletor". Ao habilitar "executar em paralelo", você estará instruindo a gravação de fluxos de dados nos coletores conectados ao mesmo tempo, em vez de maneira sequencial. Para utilizar a opção de execução em paralelo, os coletores devem ser agrupados e conectados ao mesmo fluxo por meio de uma Nova ramificação ou Divisão condicional.

Acessar modelos de banco de dados do Azure Synapse em pipelines

Você pode usar um modelo de banco de dados do Azure Synapse ao criar um pipeline. Ao criar um novo fluxo de dados, nas configurações de origem ou coletor, selecione BD do Workspace. As listas suspensas do banco de dados listará os bancos de dados criados por meio do modelo de banco de dados. A opção BD do Workspace só está disponível para novos fluxos de dados. Ela não está disponível quando você usa um pipeline existente da galeria do Synapse Studio.

Consulte outros artigos sobre Fluxo de Dados relacionados ao desempenho: