Compartilhar via


Funções de janela em fluxos 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 em pipelines do Azure Data Factory e pipelines do Azure Synapse Analytics. Este artigo se aplica ao fluxo de dados de mapeamento. Se você for novo em transformações, consulte o artigo introdutório Transformar dados usando fluxos de dados de mapeamento.

Este artigo fornece detalhes sobre as funções de janela com suporte do Azure Data Factory e do Azure Synapse Analytics no mapeamento de fluxos de dados.

Lista de funções de janela

As funções a seguir estão disponíveis apenas em transformações de janela.

Função de janela Tarefa
cumeDist Calcula a posição de um valor relativo a todos os valores na partição. O resultado é o número de linhas anteriores ou iguais à linha atual na ordenação da partição, dividido pelo número total de linhas na partição de janela. Todos os valores empatados na ordenação são avaliados na mesma posição.
denseRank Computa a classificação de um valor em um grupo de valores especificados na cláusula order by de uma janela. O resultado é 1 mais o número de linhas anteriores ou iguais à linha atual na ordenação da partição. Os valores não produzem lacunas na sequência. A denseRank função funciona mesmo quando os dados não são classificados e procura alterações nos valores.
lag Obtém o valor do primeiro parâmetro avaliado n linhas antes da linha atual. O segundo parâmetro é o número de linhas para olhar para trás e o valor padrão é 1. Se não houver tantas linhas assim, um valor null é retornado, a menos que um valor padrão seja especificado.
lead Obtém o valor do primeiro parâmetro avaliado nas linhas n após a linha atual. O segundo parâmetro é o número de linhas a serem aguardadas e o valor padrão é 1. Se não houver tantas linhas, retorna-se um valor de null, a menos que um valor padrão seja especificado.
nTile Divide as linhas de cada partição de janela em buckets de n que variam de 1 a, no máximo, n. Os valores do bucket diferem em no máximo 1. Se o número de linhas na partição não se dividir uniformemente no número de buckets, os valores restantes serão distribuídos um por bucket, começando com o primeiro bucket. A função NTile é útil para o cálculo de tertiles, quartis, decis e outras estatísticas de resumo comuns.

A função calcula duas variáveis durante a inicialização. O tamanho de um bucket regular tem uma linha extra adicionada a ele. Ambas as variáveis são baseadas no tamanho da partição atual. Durante o processo de cálculo, a função acompanha o número da linha atual, o número do bucket atual e o número da linha em que o bucket muda (bucketThreshold). Quando o número de linha atual atinge o limite do bucket, o valor do bucket aumenta em um. O limite aumenta de acordo com o tamanho do bucket (mais um extra se o bucket atual estiver preenchido).
rank Computa a classificação de um valor em um grupo de valores especificados na cláusula order by de uma janela. O resultado é 1 mais o número de linhas anteriores ou iguais à linha atual na ordenação da partição. Os valores produzem lacunas na sequência. A rank função funciona mesmo quando os dados não são classificados e procura alterações nos valores.
rowNumber Atribui uma numeração de linha sequencial para linhas em uma janela começando com 1.