Guida decisionale di Microsoft Fabric: attività Copy, flusso di dati o Spark
Usare questa guida di riferimento e gli scenari di esempio per decidere se è necessaria un'attività di copia, un flusso di dati o Spark per i carichi di lavoro di Microsoft Fabric.
Proprietà di attività di copia, flusso di dati e Spark
Attività Copy della pipeline | Flusso di dati Gen2 | Spark | |
---|---|---|---|
Caso d'uso | Migrazione di data lake e data warehouse, inserimento dati, trasformazione lightweight |
Inserimento dati, trasformazione dati, data wrangling profiling dati |
Inserimento dati, trasformazione dati, elaborazione dati, profiling dati |
Utente sviluppatore principale | Ingegnere dei dati, integrazione dei dati |
Ingegnere dei dati, integrazione dei dati analista aziendale |
Ingegnere dei dati, scienziato dei dati, sviluppatore dati |
Set di competenze per sviluppatori primario | ETL, SQL, JSON |
ETL, M, SQL |
Spark (Scala, Python, Spark SQL, R) |
Codice scritto | Senza codice, basso uso di codice |
Senza codice, basso uso di codice |
Codice |
Volume dei dati | Da basso a elevato | Da basso a elevato | Da basso a elevato |
Interfaccia di sviluppo | Procedura guidata, canvas |
Power Query | Notebook, Definizione di processo Spark |
Sources | 30 o più connettori | 150 o più connettori | Centinaia di librerie Spark |
Destinazioni | 18 o più connettori | Lakehouse, Database SQL di Azure, Esplora dati di Azure, Azure Synapse Analytics |
Centinaia di librerie Spark |
Complessità della trasformazione | Bassa: lightweight: conversione dei tipi, mapping di colonne, unione/suddivisione di file, gerarchia flat |
Da bassa a elevata: 300 o più funzioni di trasformazione |
Da bassa a elevata: supporto per librerie e native Spark e open source |
Esaminare i tre scenari seguenti per informazioni sulla scelta di come usare i dati in Fabric.
Scenario1
Leo, ingegnere dei dati, deve inserire un volume elevato di dati da sistemi esterni, sia in locale che nel cloud. Questi sistemi esterni includono database, file system e API. Leo non vuole scrivere e gestire il codice per ogni operazione di spostamento dati o connettore. Vuole seguire le procedure consigliate per i livelli a medaglione, con bronzo, argento e oro. Leo non ha alcuna esperienza con Spark, quindi preferisce il più possibile l'interfaccia utente di trascinamento della selezione, con ricorso minimo al codice. Inoltre, vuole elaborare i dati in base a una pianificazione.
Il primo passaggio consiste nell'ottenere i dati non elaborati nel lakehouse a livello di bronzo dalle risorse dati di Azure e da varie origini di terze parti (ad esempio Snowflake Web, REST, AWS S3, GCS e così via). Vuole un lakehouse consolidato, in modo che tutti i dati provenienti da varie origini LOB, locali e cloud si trovino in un'unica posizione. Leo esamina le opzioni e seleziona l'attività Copy della pipeline come scelta appropriata per la copia binaria non elaborata. Questo modello si applica sia all'aggiornamento dati cronologico che a quello incrementale. Con l'attività Copy, Leo può caricare dati oro in un data warehouse senza codice, se necessario, e le pipeline offrono un inserimento di dati su larga scala in grado di spostare dati dell’ordine dei petabyte. L’attività Copy è la migliore scelta a basso codice e senza codice per spostare petabyte di dati in lakehouse e warehouse da una varietà di origini, ad hoc o tramite una pianificazione.
Scenario2
Mary è ingegnere dei dati con una conoscenza approfondita dei diversi requisiti di report analitici LOB. Un team upstream ha implementato correttamente una soluzione per eseguire la migrazione di più dati cronologici e incrementali del LOB in un comune lakehouse. Mary è stata incaricata di pulire i dati, applicare le logiche di business e caricarli in più destinazioni (ad esempio database SQL di Azure, ADX e un lakehouse) per prepararli per i rispettivi team di report.
Mary è un utente esperto di Power Query e il volume di dati è compreso nell'intervallo da basso a medio per ottenere le prestazioni desiderate. I flussi di dati forniscono interfacce senza codice o con poco codice per l'inserimento di dati da centinaia di origini dati. Con i flussi di dati, è possibile trasformare i dati usando 300 o più opzioni di trasformazione dei dati e scrivere i risultati in più destinazioni con un'interfaccia utente estremamente visiva e facile da usare. Mary esamina le opzioni e decide che è opportuno usare il flusso di dati Gen 2 come opzione di trasformazione preferita.
Scenario3
Adam è un ingegnere di dati che lavora per una grande azienda di vendita al dettaglio che usa un lakehouse per archiviare e analizzare i dati dei clienti. Come parte del suo lavoro, Adam è responsabile della creazione e della gestione delle pipeline di dati che estraggono, trasformano e caricano i dati nel lakehouse. Uno dei requisiti aziendali della società consiste nell'eseguire analisi di revisione dei clienti per ottenere informazioni dettagliate sulle esperienze dei clienti e migliorare i propri servizi.
Adam decide che l'opzione migliore consiste nell'usare Spark per compilare la logica di estrazione e trasformazione. Spark offre una piattaforma di elaborazione distribuita in grado di elaborare grandi quantità di dati in parallelo. Scrive un'applicazione Spark usando Python o Scala, che legge dati strutturati, semistrutturati e non strutturati da OneLake per le recensioni e i feedback dei clienti. L'applicazione pulisce, trasforma e scrive i dati in tabelle Delta nel lakehouse. I dati sono quindi pronti per essere usati per l'analisi downstream.