Come funziona il pushback SQL?
Ultimo aggiornamento: 16 apr 2025
I principali obiettivi della generazione di SQL sono le parti iniziali di un flusso che vengono dopo i nodi di importazione dei dati. Quando SPSS Modeler trova un nodo che non può essere compilato in SQL, SPSS Modeler estrae i dati dal database e li elabora.
Durante la preparazione e l'esecuzione del flusso, il processo di generazione dell'SQL avviene come segue:
- SPSS Modeler riordina i flussi per spostare i nodi a valle nella "zona SQL", dove si può dimostrare che è sicuro farlo.
- SPSS Modeler lavora dai nodi di importazione verso i nodi terminali, costruendo le espressioni SQL in modo incrementale.
- Questa fase si interrompe quando SPSS Modeler raggiunge un nodo che non può essere convertito in SQL o il nodo terminale di un flusso viene convertito in SQL (ad esempio, un nodo tabella o un nodo grafico).
- Per ottimizzare le prestazioni, i nodi possono essere esclusi dal processo di generazione dell'SQL se l'output di quel nodo non viene utilizzato a valle nei nodi successivi. Ad esempio, se un nodo Derive crea una nuova colonna che non viene utilizzata in un nodo Matrice a valle, il nodo Derive viene escluso dalla generazione SQL. L'icona SQL non appare accanto al nodo Derive al termine della generazione SQL.
Figura 1. Generazione di SQL escludendo i nodi - Alla fine della fase, ogni nodo viene etichettato con un'istruzione SQL se il nodo e i relativi predecessori hanno un equivalente SQL.
- L'SQL viene controllato per verificarne la validità. SPSS Modeler lavora dai nodi che hanno gli equivalenti SQL più complicati a ritroso fino ai nodi di importazione. L'SQL che è stato convalidato correttamente viene scelto per l'esecuzione.
- I nodi per i quali tutte le operazioni hanno generato SQL sono evidenziati con un'icona SQL accanto al nodo nell'area di disegno del flusso. In base ai risultati, è possibile riorganizzare ulteriormente il flusso, se necessario, per sfruttare appieno l'esecuzione del database.
Dove si verificano miglioramenti?
Il pushback SQL migliora le prestazioni di diverse operazioni sui dati:
- Giunti (unione per chiave)
- Le operazioni di unione possono migliorare l'ottimizzazione nei database.
- Aggregazione
- Per produrre i loro risultati, i nodi aggregazione, distribuzione e web utilizzano l'aggregazione. I dati riepilogati utilizzano la larghezza di banda in modo molto più ridotto rispetto ai dati originali.
- Selezione
- La scelta dei record in base a determinati criteri riduce la quantità di record.
- Ordinamento
- L'ordinamento dei record è un'attività che utilizza molte risorse e viene eseguita in modo più efficiente in un database.
- Derivazione del campo
- In un database, i nuovi campi vengono generati in modo più efficiente.
- Proiezione del campo
- Il software estrae solo i campi necessari per la successiva elaborazione dal database, minimizzando i requisiti la larghezza di banda e di memoria. Lo stesso vale per i campi superflui nei file flat: anche se il software deve leggere i campi superflui, non deve allocare spazio per archiviarli.
- Calcolo del punteggio
- La generazione di un SQL può derivare da strutture ad albero delle decisioni, insiemi di regole, regressione lineare e modelli generati da fattori.
L'argomento è stato utile?
0/1000