È possibile inviare molte operazioni di preparazione dei dati e operazioni di mining direttamente nel database per migliorare le prestazioni.
Una delle funzioni più potenti di SPSS Modeler è la possibilità di eseguire molte operazioni di preparazione dei dati e di mining direttamente nel database. Tramite la generazione di codice SQL che è possibile rinviare al database per l'esecuzione, molte operazioni, ad esempio campionamento, ordinamento, derivazione di nuovi campi e alcuni tipi di rappresentazione grafica, possono essere eseguite nel database anziché sul computer client o server. Quando si lavora con i grandi dataset, questi pushback possono migliorare significativamente le prestazioni in diversi modi:
- Riducendo la dimensione della serie di risultati da trasferire da DBMS a watsonx.ai. Quando gli insiemi di risultati di grandi dimensioni vengono letti tramite un driver ODBC, potrebbero verificarsi inefficienze a livello di driver o I/O di rete. Per questo motivo, le operazioni che beneficiano maggiormente dell'ottimizzazione SQL sono la selezione e l'aggregazione di righe e colonne (nodi Seleziona, Campione e Aggregazione), che in genere riducono le dimensioni del dataset da trasferire. I dati possono anche essere memorizzati nella cache in una tabella temporanea nel database, in punti critici del flusso (per esempio dopo un nodo Unione o Seleziona) per migliorare ulteriormente le prestazioni.
- Sfruttando le prestazioni e la scalabilità del database. L'efficienza viene incrementata in quanto un DBMS può sfruttare l'elaborazione parallela, hardware più potente, una gestione più sofisticata dell'archiviazione su disco e la presenza di indici.
Dati questi vantaggi, watsonx.ai è progettato per massimizzare la quantità di SQL generata da ogni flusso di SPSS Modeler in modo che solo le operazioni che non possono essere compilate in SQL vengano eseguite da watsonx.ai. A causa dei limiti di espressione dell'SQL standard (SQL-92), tuttavia, è possibile che alcune operazioni non siano supportate.
Per i dettagli sui database attualmente supportati, consultare Origini dati supportate per SPSS Modeler.
- Durante l'esecuzione di un flusso, i nodi di pushback al database vengono evidenziati con una piccola icona SQL accanto al nodo. Quando si inizia a effettuare le modifiche ad un flusso dopo l'esecuzione, le icone verranno rimosse fino alla successiva esecuzione del flusso.
- Se si desidera visualizzare quali nodi eseguiranno il push back prima di eseguire un flusso, fare clic su Anteprima SQL. Ciò consente di modificare il flusso prima di eseguirlo per migliorare le prestazioni spostando le operazioni non di push back il più a valle possibile, ad esempio.
- Se non si può eseguire il pushback di un nodo, non verrà eseguito nemmeno per tutti i successivi nodi nel flusso (il pushback si arresta a tale nodo). Questo può influire sulla decisione relativa all'ordine dei nodi nel flusso.
- A causa delle differenze minori nell'implementazione SQL, i flussi in esecuzione in un database possono restituire risultati leggermente diversi quando eseguiti in watsonx.ai. Per ragioni analoghe, tali differenze possono variare anche in base al fornitore di database. Ad esempio, a seconda della configurazione del database per la distinzione tra maiuscole e minuscole nel confronto di stringhe e nella raccolta di stringhe, i flussi SPSS Modeler che vengono eseguiti utilizzando il push back SQL possono produrre risultati diversi da quelli che vengono eseguiti senza il push back SQL. Per consigli sulla configurazione del database, rivolgersi all'amministratore di database. Per ottimizzare la compatibilità con watsonx.ai, i confronti delle stringhe del database devono essere sensibili al maiuscolo / minuscolo.
- Quando si utilizza watsonx.ai per generare SQL, è possibile che il risultato utilizzando il push back SQL non sia congruente su alcune piattaforme (Linux, ad esempio). Questo dipende dal valore di virgola mobile gestita in modo diverso su diverse piattaforme.