Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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.
Use a transformação de chave substituta para adicionar um valor de chave incremental em cada linha de dados. Isso é útil ao criar tabelas de dimensões em um esquema de estrela em um modelo de dados analítico. Em um esquema em estrela, cada membro em suas tabelas de dimensões requer uma chave exclusiva que é uma chave não comercial.
Configuração
Coluna de chave: o nome da coluna de chave alternativa gerada.
Valor inicial: o valor de chave mais baixo que será gerado.
Incrementar chaves de fontes existentes
Para iniciar sua sequência a partir de um valor que existe em uma fonte, é recomendável usar um sink de cache para salvar esse valor e usar uma transformação de coluna derivada para somar os valores. Use uma pesquisa armazenada em cache para obter a saída e acrescentá-la à chave gerada. Veja mais informações sobre coletores de cache e pesquisas em cache.
Incrementar a partir do valor máximo existente
Para propagar o valor de chave com o máximo anterior, há duas técnicas que você pode usar com base em onde estão os dados de origem.
Fontes do banco de dados
Utilize uma opção de consulta SQL para selecionar MAX() da sua fonte. Por exemplo, Select MAX(<surrogateKeyName>) as maxval from <sourceTable>.
Fontes de arquivo
Se o valor máximo anterior estiver em um arquivo, use a função max() na transformação agregada para obter o valor máximo anterior:
Em ambos os casos, será necessário gravar em um coletor de cache e pesquisar o valor.
Script de fluxo de dados
Sintaxe
<incomingStream>
keyGenerate(
output(<surrogateColumnName> as long),
startAt: <number>L
) ~> <surrogateKeyTransformationName>
Exemplo
O script de fluxo de dados para a configuração de chave alternativa está no snippet de código abaixo.
AggregateDayStats
keyGenerate(
output(key as long),
startAt: 1L
) ~> SurrogateKey1
Conteúdo relacionado
Esses exemplos usam as transformações de Unir e Coluna Derivada.