Nel precedente articolo abbiamo visto come l’elaborazione all’interno del database consenta la gestione dei dati senza uscire dall’ambiente del DB. Gli strumenti In-DB, infatti, effettuano una connessione al database senza trasferire i dati al computer locale, aumentando considerevolmente le prestazioni.
Di seguito alcune domande che ci permettono di approfondire meglio questo prezioso strumento di Alteryx.
Quando utilizzare gli strumenti In-DB?
Un classico esempio in cui potresti voler utilizzare gli strumenti In-DB invece degli strumenti standard sarebbe il seguente: hai una tabella enorme in Oracle, devi integrare informazioni provenienti da un piccolo file Excel, e scrivere la nuova tabella in Oracle. In questo esempio, è possibile utilizzare gli strumenti In-DB per eseguire lo streaming dei dati di Excel in una tabella temporanea nel database e quindi utilizzare lo strumento Join In-DB. Ciò ridurrebbe considerevolmente lo spostamento complessivo dei dati sulla rete e ottimizzerebbe il tempo di esecuzione del workflow.
In quali casi puoi aspettarti che i flussi di lavoro In-DB siano più lenti degli strumenti normali?
Questo dipende dal tipo di database che stai utilizzando e dalla velocità con cui può elaborare le query del database. Alcuni database come SQL Server sono ottimizzati per gestire le query molto più velocemente, mentre altri possono essere più lenti. I flussi di lavoro contenenti più join e unioni possono aumentare la lunghezza e la complessità della query, richiedendo più tempo per l’elaborazione. In tali casi, l’inserimento dei dati con i normali strumenti di input (su una rete a bassa latenza) e l’elaborazione in Designer può essere più rapido.
Di quali autorizzazioni per il database ho bisogno per utilizzare gli strumenti In-DB?
- Le autorizzazioni di lettura sono necessarie per accedere al database sottostante.
- I privilegi di scrittura sono necessari per creare una tabella nel database.
- È necessario disporre delle autorizzazioni create per poter eseguire lo streaming dei dati nel database e scrivere i dati nel database. L’eccezione è Microsoft SQL Server.
- Per consentire la visibilità di una tabella temporanea tra le sessioni, Alteryx deve creare una tabella permanente che viene eventualmente eliminata alla fine di un flusso di lavoro.
In che modo gli strumenti In-DB generano le query SQL specifiche del database?
Le query specifiche del database sono per lo più harcodate per gli strumenti In-DB e per ciascuna origine dati supportata. Ogni origine dati tenta di utilizzare funzioni generiche.
Come funzionano le sessioni e le tabelle temporanee con gli strumenti In-DB?
Gli strumenti In-DB hanno la funzionalità aggiuntiva di memorizzare nella cache le sessioni durante un’esecuzione. Se più strumenti In-DB utilizzano la stessa connessione (che si tratti di utente, sistema o file), verrà creata solo una sessione attiva per il flusso di lavoro. Solo le sessioni di lettura e scrittura vengono memorizzate nella cache separatamente. Queste sessioni sono attive solo quando viene eseguito il flusso di lavoro (in particolare durante l’esecuzione del motore). Una volta che le query sono state eseguite e la sessione non è più necessaria, Alteryx verificherà la presenza di tabelle temporanee create durante l’esecuzione, le cancellerà e chiuderà la connessione.
Se un flusso di lavoro non riesce o si arresta in modo anomalo durante un’esecuzione, potrebbe non riuscire a cancellare le tabelle temporanee.
E se ancora qualcosa non ti è chiaro e vuoi qualche informazione in più, non esitare a scriverci su info@visualitics.it!