Funções de janela no 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.

Os artigos a seguir fornecem detalhes sobre as funções de janela com suporte no Azure Data Factory e no Azure Synapse Analytics nos fluxos de dados de mapeamento.

Lista de funções de janela

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

Função de janela Tarefa
cumeDist A função 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. Quaisquer valores de empate na ordenação serão avaliados para a 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 produzirão lacunas na sequência. O Dense Rank funciona mesmo quando os dados não são classificados e busca 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 a retroceder e o valor padrão é 1. Se não houver tantas linhas, um valor null será retornado, a menos que um valor padrão seja especificado.
lead Obtém o valor do primeiro parâmetro avaliado n linhas depois da linha atual. O segundo parâmetro é o número de linhas a avançar e o valor padrão é 1. Se não houver tantas linhas, um valor null será retornado, a menos que um valor padrão seja especificado.
nTile A função NTile divide as linhas de cada partição de janela em buckets n que variam de 1 a no máximo n. Os valores de bucket vão diferir em no máximo 1. Se o número de linhas na partição não se dividir uniformemente em um 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 terá 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 será alterado (bucketThreshold). Quando o número da linha atual atinge o limite do bucket, o valor do bucket é aumentado em um e o limite é aumentado pelo tamanho do bucket (mais um extra se o bucket atual for 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 produzirão lacunas na sequência. O Rank funciona mesmo quando os dados não são classificados e busca alterações nos valores.
rowNumber Atribui uma numeração de linha sequencial para linhas em uma janela que começa com 1.