Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
APLICA-SE A: Azure Data Factory
Azure Synapse Analytics
Gorjeta
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Os fluxos de dados estão disponíveis nos pipelines do Azure Data Factory e no Azure Synapse Analytics. Este artigo aplica-se ao mapeamento de fluxos de dados. Se você é 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 de incremento a cada linha de dados. Isso é útil ao projetar tabelas de dimensão em um modelo de dados analítico de esquema estrela. Em um esquema em estrela, cada membro em suas tabelas de dimensão requer uma chave exclusiva que é uma chave não comercial.
Configuração
Coluna de chave: o nome da coluna de chave substituta gerada.
Valor inicial: o menor valor de chave que será gerado.
Incrementar chaves a partir de fontes existentes
Para iniciar sua sequência a partir de um valor que existe em uma fonte, recomendamos usar um coletor de cache para salvar esse valor e usar uma transformação de coluna derivada para adicionar os dois valores juntos. Use uma pesquisa em cache para obter a saída e anexá-la à chave gerada. Para obter mais informações, aprenda sobre reservatórios de cache e consultas em cache.
Incremento a partir do valor máximo existente
Para definir o valor da chave com o máximo anterior, há duas técnicas que podes usar com base em onde estão os dados de origem.
Fontes das bases 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 ficheiros
Se o valor máximo anterior estiver em um arquivo, use a max()
função na transformação agregada para obter o valor máximo anterior:
Em ambos os casos, necessitará gravar num coletor de cache e consultar 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 substituta acima está no trecho de código abaixo.
AggregateDayStats
keyGenerate(
output(key as long),
startAt: 1L
) ~> SurrogateKey1
Conteúdos relacionados
Estes exemplos utilizam transformações como Join e Derived Column.