Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Lo snapshot in modalità driver è un percorso di caricamento per snapshot Delta che viene eseguito nel processo del driver anziché utilizzare le operazioni distribuite di Spark.
Usare questa funzionalità quando si vuole ridurre la latenza di avvio delle query a freddo per le tabelle Delta con piccoli log Delta. In questi casi, evitare il sovraccarico di pianificazione dei processi Spark può migliorare il tempo di caricamento degli snapshot.
Quando usare lo snapshot in modalità driver
Lo snapshot in modalità driver è una scelta ottimale quando è necessaria un'avvio più veloce delle query a freddo per le tabelle con piccoli log Delta.
I vantaggi includono:
- Riduzione della latenza evitando il sovraccarico di pianificazione dei processi Spark per il caricamento di snapshot.
- Elaborazione locale nel driver, che può ridurre le operazioni di I/O di rete per i log idonei.
Si consideri la modalità tradizionale quando la memoria del driver è vincolata.
Configurare lo snapshot della modalità driver
Il comportamento dello snapshot in modalità driver viene controllato tramite le opzioni di configurazione di Spark.
È possibile impostare queste proprietà nella sessione del notebook con spark.conf.set o tramite le proprietà Spark dell'ambiente Fabric. Per informazioni su dove configurare le proprietà Spark dell'ambiente, vedere Creare, configurare e usare un ambiente in Fabric e Impostazioni di configurazione di calcolo Spark negli ambienti Fabric.
Impostazioni di base
Usare queste impostazioni per attivare o disattivare lo snapshot in modalità driver e controllare il comportamento di fallback.
| Configuration | Type | Default | Description |
|---|---|---|---|
spark.microsoft.delta.snapshot.driverMode.enabled |
Boolean | false |
Abilita o disabilita lo snapshot in modalità driver |
spark.microsoft.delta.snapshot.driverMode.fallback.enabled |
Boolean | true |
Abilita il fallback automatico alla modalità tradizionale in caso di errori |
Impostazioni limite dimensioni
Usare questi limiti per controllare quando lo snapshot in modalità driver è autorizzato a elaborare un log Delta nel driver.
| Configuration | Type | Default | Description |
|---|---|---|---|
spark.microsoft.delta.snapshot.driverMode.maxLogSize |
Long | 8 MB | Dimensioni massime del log delta (byte) da elaborare in modalità driver (per tabella/versione) |
spark.microsoft.delta.snapshot.driverMode.maxLogFileCount |
Integer | 10 | Numero massimo di file di log Delta da elaborare in modalità driver (per tabella/versione) |
Utilizzo di base
Usare i frammenti di codice seguenti in una sessione del notebook. È possibile impostare i valori di configurazione in qualsiasi ordine, ma impostarli prima di eseguire l'operazione di lettura Delta.
Abilitare lo snapshot della modalità driver:
Impostare i limiti di dimensione (valori di esempio):
spark.conf.set("spark.microsoft.delta.snapshot.driverMode.maxLogSize", "4MB")
spark.conf.set("spark.microsoft.delta.snapshot.driverMode.maxLogFileCount", "10")
Caricare una tabella Delta. Se la versione della tabella soddisfa i limiti configurati, viene utilizzato uno snapshot in modalità driver.
Consigli sulla configurazione
Usare le raccomandazioni seguenti come baseline sicura per i carichi di lavoro di produzione.
- Inizia in modo conservativo: Inizia con i limiti di dimensione predefiniti e aumenta in base al monitoraggio
- Abilita fallback: abilitare sempre il fallback negli ambienti di produzione (impostazione predefinita)
Troubleshooting
Usare i controlli seguenti quando lo snapshot in modalità driver non si comporta come previsto.
Errori OOM del driver
- Ridurre
maxLogSizeomaxLogFileCountlimiti oppure disabilitare la modalità driver. - Prendere in considerazione l'aumento delle dimensioni del nodo driver
- Ridurre
Fallback alla modalità tradizionale
- Controllare i log per le cause di fallback. Cercare i messaggi di log contenenti "Errore in modalità driver"
- Esaminare la configurazione del limite delle dimensioni. Cercare i messaggi di log contenenti il controllo delle dimensioni del log
- Lo snapshot in modalità driver non supporta gli account storage con lo spazio dei nomi gerarchico disabilitato.
Problemi di prestazioni
- Confronto con le prestazioni tradizionali della modalità Spark
- Modificare la configurazione in base alle caratteristiche del carico di lavoro