Condividi tramite


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 all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!

I flussi di dati sono disponibili nelle pipeline sia di Azure Data Factory che di Azure Synapse. Questo articolo si applica ai flussi di dati per mapping. Se non si ha esperienza con le trasformazioni, vedere l'articolo introduttivo Trasformare i dati con un flusso di dati per 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 . Si può iniziare a digitare l'espressione o aprire il generatore di espressioni per costruire la logica.

Impostazioni della colonna derivata

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.

Selezione di una nuova colonna derivata

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.

Criteri delle colonne

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.

Crea nuova colonna

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.

Aggiungi sottocolonna

Per altre informazioni sulla gestione di tipi complessi nel flusso di dati, vedere Gestione del formato JSON nel flusso di dati per mapping.

Aggiungi colonna complessa

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:

Esempio di derivazione

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