Trasformazione Colonna derivata nel flusso di dati per mapping
SI APPLICA A: Azure Data Factory Azure Synapse Analytics
Suggerimento
Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .
I flussi di dati sono disponibili sia in Azure Data Factory che in Azure Synapse Pipelines. Questo articolo si applica ai flussi di dati di mapping. Se non si ha esperienza con le trasformazioni, vedere l'articolo introduttivo Trasformare i dati usando un flusso di dati di mapping.
Usare la trasformazione Colonna derivata per generare nuove colonne nel flusso di dati o per modificare campi esistenti.
Creare e aggiornare colonne
Quando si crea una colonna derivata, è possibile generare una nuova colonna o aggiornare una colonna esistente. Nella casella di testo Colonna immettere nella colonna che si sta creando. Per eseguire l'override di una colonna esistente nello schema, è possibile usare l'elenco a discesa delle colonne. Per compilare l'espressione della colonna derivata, fare clic sulla casella di testo Immetti espressione . È possibile iniziare a digitare l'espressione o aprire il generatore di espressioni per costruire la logica.
Per aggiungere altre colonne derivate, fare clic su Aggiungi sopra l'elenco di colonne o sull'icona con il segno più accanto a una colonna derivata esistente. Scegliere Aggiungi colonna o Aggiungi criteri di ricerca colonna.
Criteri delle colonne
Nei casi in cui lo schema non è definito in modo esplicito o se si vuole aggiornare un set di colonne in blocco, è necessario creare modelli di colonna. I criteri di colonna consentono di associare le colonne usando regole basate sui metadati della colonna e creare colonne derivate per ogni colonna corrispondente. Per altre informazioni, vedere come creare modelli di colonna nella trasformazione colonna derivata.
Compilazione di schemi con il generatore di espressioni
Quando si usa il generatore di espressioni del flusso di dati di mapping, è possibile creare, modificare e gestire le colonne derivate nella sezione Colonne derivate. Vengono elencate tutte le colonne create o modificate nella trasformazione. Scegliere in modo interattivo la colonna o il modello da modificare facendo clic sul nome della colonna. Per aggiungere un'altra colonna, selezionare Crea nuovo e scegliere se aggiungere una singola colonna o un criterio.
Quando si utilizzano colonne complesse, è possibile creare sottocolumi. A tale scopo, fare clic sull'icona con il segno più accanto a una colonna e selezionare Aggiungi sottocolumn. Per altre informazioni sulla gestione di tipi complessi nel flusso di dati, vedere Gestione del formato JSON nel flusso di dati per mapping.
Per altre informazioni sulla gestione di tipi complessi nel flusso di dati, vedere Gestione del formato JSON nel flusso di dati per mapping.
Script del flusso di dati
Sintassi
<incomingStream>
derive(
<columnName1> = <expression1>,
<columnName2> = <expression2>,
each(
match(matchExpression),
<metadataColumn1> = <metadataExpression1>,
<metadataColumn2> = <metadataExpression2>
)
) ~> <deriveTransformationName>
Esempio
L'esempio seguente rappresenta una colonna derivata denominata CleanData
che accetta un flusso in ingresso MoviesYear
e crea due colonne derivate. La prima colonna derivata sostituisce la colonna Rating
con un valore di valutazione come tipo Integer. La seconda colonna derivata è un modello a cui corrisponde ogni colonna il cui nome inizia con "movies". Per ogni colonna corrispondente, viene creata una colonna movie
uguale al valore della colonna corrispondente con il prefisso ' movie_'.
Nell'interfaccia utente questa trasformazione è simile all'immagine seguente:
Lo script del flusso di dati per questa trasformazione si trova nel frammento di codice seguente:
MoviesYear derive(
Rating = toInteger(Rating),
each(
match(startsWith(name,'movies')),
'movie' = 'movie_' + toString($$)
)
) ~> CleanData
Contenuto correlato
- Altre informazioni sul Linguaggio delle espressioni del flusso di dati per mapping.