Condividi tramite


Trasformazione Suddivisione condizionale 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.

La trasformazione Suddivisione condizionale instrada le righe di dati a flussi diversi in base alle condizioni di corrispondenza. La trasformazione Suddivisione condizionale è simile a una struttura decisionale CASE in un linguaggio di programmazione. La trasformazione valuta le espressioni e, in base ai risultati, indirizza la riga di dati al flusso specificato.

Configurazione

L'impostazione SplitOn determina se la riga di dati fluisce sul primo flusso corrispondente o su ogni flusso a cui corrisponde.

Utilizzare il generatore di espressioni del flusso di dati per immettere un'espressione per la condizione di divisione. Per aggiungere una nuova condizione, fare clic sull'icona con il segno più in una riga esistente. È possibile aggiungere un flusso predefinito anche per le righe che non soddisfano alcuna condizione.

Shows the Conditional Split UI with selections as described above.

Script del flusso di dati

Sintassi

<incomingStream>
    split(
        <conditionalExpression1>
        <conditionalExpression2>
        ...
        disjoint: {true | false}
    ) ~> <splitTx>@(stream1, stream2, ..., <defaultStream>)

Esempio

Nell'esempio seguente viene illustrata una trasformazione Suddivisione condizionale denominata SplitByYear che accetta il flusso in ingresso CleanData. Questa trasformazione presenta due condizioni di divisione year < 1960 e year > 1980. disjoint è false perché i dati passano alla prima condizione di corrispondenza anziché a tutte le condizioni corrispondenti. Ogni riga che corrisponde alla prima condizione passa al flusso di output moviesBefore1960. Tutte le righe rimanenti corrispondenti alla seconda condizione passano al flusso di output moviesAFter1980. Tutte le altre righe passano attraverso il flusso predefinito AllOtherMovies.

Nell'interfaccia utente del servizio questa trasformazione è simile all'immagine seguente:

Shows the Conditional Split UI with selections as described above.

Lo script del flusso di dati per questa trasformazione si trova nel frammento di codice seguente:

CleanData
    split(
        year < 1960,
	    year > 1980,
	    disjoint: false
    ) ~> SplitByYear@(moviesBefore1960, moviesAfter1980, AllOtherMovies)

Le trasformazioni comuni del flusso di dati utilizzate con Suddivisione condizionale sono la trasformazione Join, la trasformazione Ricerca e la trasformazione Selezione