Che cos'è il calcolo Spark in Microsoft Fabric?
Si applica a: Ingegneria dei dati e Data Science in Microsoft Fabric
Microsoft Fabric Ingegneria dei dati e Data Science esperienze operano su una piattaforma di calcolo Spark completamente gestita. Questa piattaforma è progettata per offrire velocità e efficienza senza precedenti. Con i pool di avvio, è possibile prevedere l'inizializzazione rapida della sessione Spark, in genere entro 5-10 secondi e non è necessaria alcuna configurazione manuale. Inoltre, si ottiene anche la flessibilità per personalizzare i pool Spark in base ai requisiti specifici di progettazione dei dati e data science. La piattaforma consente un'esperienza di analisi ottimizzata e personalizzata.
Importante
Microsoft Fabric è attualmente in ANTEPRIMA. Queste informazioni si riferiscono a un prodotto di versione preliminare che può essere modificato sostanzialmente prima che venga rilasciato. Microsoft non garantisce alcuna garanzia, espressa o implicita, rispetto alle informazioni fornite qui.
Pool di avvio
I pool di avvio sono un modo semplice e veloce per usare Spark nella piattaforma Microsoft Fabric entro pochi secondi. È possibile usare le sessioni Spark immediatamente, invece di attendere che Spark sia in grado di configurare i nodi per l'utente, che consente di eseguire altre operazioni con i dati e ottenere informazioni dettagliate più rapide.
I pool di avvio dispongono di cluster Spark sempre attiva e pronti per le richieste. Usano nodi medi che aumentano dinamicamente in base alle esigenze del processo Spark.
I pool di avvio hanno anche impostazioni predefinite che consentono di installare rapidamente le librerie senza rallentare l'ora di inizio della sessione. Tuttavia, se si desidera usare proprietà o librerie Spark aggiuntive dalle impostazioni di area di lavoro o capacità, potrebbe richiedere più tempo per ottenere i nodi per l'utente. Si paga solo per i pool di avvio quando si usano sessioni Spark per eseguire query. Non si paga per il momento in cui Spark mantiene i nodi pronti per l'utente.
Pool di Spark
Un pool spark è un modo per indicare a Spark il tipo di risorse necessarie per le attività di analisi dei dati. È possibile assegnare un nome al pool Spark e scegliere il numero e la quantità di nodi (i computer che eseguono il lavoro). È anche possibile indicare a Spark come modificare il numero di nodi a seconda della quantità di lavoro che si ha. La creazione di un pool Spark è gratuita; si paga solo quando si esegue un processo Spark nel pool e quindi Spark configura i nodi per l'utente.
Se non si usa il pool Spark per 2 minuti dopo l'esecuzione del processo, Spark lo eliminerà automaticamente. Questa proprietà è denominata la proprietà "time to live" e puoi modificarla se vuoi. Se si è un amministratore dell'area di lavoro, è anche possibile creare pool Spark personalizzati per l'area di lavoro e renderli l'opzione predefinita per altri utenti. In questo modo, è possibile risparmiare tempo ed evitare di configurare un nuovo pool Spark ogni volta che si esegue un notebook o un processo Spark. I pool Spark personalizzati richiedono circa tre minuti per iniziare, perché Spark deve ottenere i nodi da Azure.
Le dimensioni e il numero di nodi che è possibile avere nel pool Spark personalizzato dipendono dalla capacità di Microsoft Fabric. La capacità è una misura della quantità di potenza di calcolo che è possibile usare in Azure. Un modo per pensare è che due VCore Spark (un'unità di potenza di calcolo per Spark) equivale a un'unità di capacità. Ad esempio, uno SKU di capacità di Fabric F64 ha 64 unità di capacità, che equivale a 128 VCore Spark. È possibile usare questi VCore Spark per creare nodi di dimensioni diverse per il pool Spark personalizzato, purché il numero totale di VCore Spark non superi 128.
Possibili configurazioni di pool personalizzati per F64 in base all'esempio precedente:
SKU di capacità dell'infrastruttura | Unità di capacità | VCore Spark | Dimensioni nodo | Numero massimo di nodi |
---|---|---|---|---|
F64 | 64 | 128 | Small | 32 |
F64 | 64 | 128 | Medio | 16 |
F64 | 64 | 128 | large | 8 |
F64 | 64 | 128 | X-Large | 4 |
F64 | 64 | 128 | XX-Large | 2 |
Nota
Per creare pool personalizzati, sono necessarie autorizzazioni di amministratore per l'area di lavoro. L'amministratore della capacità di Microsoft Fabric deve concedere le autorizzazioni per consentire agli amministratori dell'area di lavoro di ridimensionare i pool Spark personalizzati. Per altre informazioni, vedere Introduzione ai pool Spark personalizzati in Fabric
Nodi
Un'istanza del pool apache Spark è costituita da un nodo head e da due o più nodi di lavoro, con almeno tre nodi in un'istanza di Spark. Il nodo head esegue servizi di gestione aggiuntivi, ad esempio Livy, Yarn Resource Manager, Zookeeper e il driver Spark. Tutti i nodi eseguono servizi, ad esempio Node Agent e Yarn Node Manager. Tutti i nodi di lavoro eseguono il servizio Spark Executor.
Dimensioni dei nodi
Un pool spark può essere definito con dimensioni del nodo che vanno da un nodo di calcolo di piccole dimensioni (con 4 vCore e 32 GB di memoria) a un nodo di calcolo di grandi dimensioni (con 64 vCore e 512 GB di memoria per nodo). Le dimensioni dei nodi possono essere modificate dopo la creazione del pool, anche se la sessione attiva deve essere riavviata.
Dimensione | vCore | Memoria |
---|---|---|
Small | 4 | 32 GB |
Medio | 8 | 64 GB |
Grande | 16 | 128 GB |
X-Large | 32 | 256 GB |
XX-Large | 64 | 512 GB |
Autoscale
La scalabilità automatica per i pool di Apache Spark consente di aumentare e ridurre automaticamente le risorse di calcolo in base alla quantità di attività. Quando la funzionalità di scalabilità automatica è abilitata, si imposta il numero minimo e il numero massimo di nodi da ridimensionare. Quando la funzionalità di scalabilità automatica è disabilitata, il numero di nodi impostati rimane fisso. Questa impostazione può essere modificata dopo la creazione del pool, anche se l'istanza potrebbe essere riavviata.
Allocazione dinamica
L'allocazione dinamica consente all'applicazione Spark di richiedere più executori se le attività superano il carico che gli executori correnti possono sopportare. Rilascia anche gli esecutori al termine dei processi e se l'applicazione Spark passa allo stato inattiva. Gli utenti aziendali spesso trovano difficile ottimizzare le configurazioni dell'executor perché sono molto diverse tra diverse fasi di un processo di esecuzione di processi Spark. Queste configurazioni dipendono anche dal volume di dati elaborati, che cambiano da tempo a tempo. Gli utenti possono abilitare l'allocazione dinamica dell'opzione executor come parte della configurazione del pool, che consente l'allocazione automatica degli execuor all'applicazione Spark in base ai nodi disponibili nel pool spark.
Quando l'opzione di allocazione dinamica è abilitata per ogni applicazione Spark inviata, il sistema riserva gli executori durante il passaggio di invio del processo in base ai nodi massimi. Gli utenti specificano i nodi massimi per supportare scenari di scalabilità automatica riusciti.