Stai concatenando e delimitando le colonne o esporti a larghezza fissa?
Consulta questa documentazione su Ottimizzazione degli script SQL*Plus . Specifico per il tuo script, ecco alcuni modi possibili per velocizzarlo:
- Assicurati che LINESIZE sia il più piccolo possibile. Aggiungi le lunghezze massime delle colonne (più i delimitatori se non a larghezza fissa). Ciò può avere un effetto drammatico sulle prestazioni, poiché SQL*Plus alloca tale quantità di memoria per ogni riga esportata. 410 non è così grande, ma se puoi diminuirlo sarebbe d'aiuto. Questo ha fatto una grande differenza, secondo la mia esperienza.
- Non attivare TRMSPOOL. Anche questo può avere un grande impatto. Ogni riga verrà quindi riempita in LINESIZE, ma con una dimensione della linea ottimale e, a seconda di come stai utilizzando il file, potrebbe essere accettabile. Tuttavia, se desideri eliminare completamente gli spazi finali, spesso può essere più veloce ritagliarli utilizzando altri metodi dopo l'esportazione.
- Gioca con ARRAYSIZE. Può aiutare (un po'). Imposta la dimensione di recupero per SQL*Plus. Il valore predefinito è 15 righe. Ad esempio, raggiungere 100 può essere d'aiuto, ma andare troppo in alto potrebbe ridurre la velocità.
Spero che questo aiuti!