Zřetězujete a vymezujete sloupce, nebo exportujete s pevnou šířkou?
Prohlédněte si tuto dokumentaci k Ladění skriptů SQL*Plus . Zde je několik možných způsobů, jak jej urychlit, konkrétně pro váš skript:
- Ujistěte se, že LINESIZE je co nejmenší. Přidejte maximální délky sloupců (plus oddělovače, pokud nemají pevnou šířku). To může mít dramatický vliv na výkon, protože SQL*Plus alokuje toto množství paměti pro každý exportovaný řádek. 410 není tak velké, ale pokud to můžete snížit, pomohlo by to. Podle mých zkušeností to udělalo velký rozdíl.
- Nezapínejte TRIMSPOOL. I to může mít velký dopad. Každý řádek bude poté osazen na VELIKOST ŘÁDKU, ale s optimální velikostí řádků a v závislosti na tom, jak soubor používáte, může být přijatelná. Pokud však chcete koncové mezery úplně odstranit, může být často rychlejší je oříznout pomocí jiných metod po exportu.
- Pohrajte si s ARRAYSIZE. Může to pomoci (trochu). Nastavuje velikost načtení pro SQL*Plus. Výchozí hodnota je 15 řádků. Zvýšení řekněme na 100 může pomoci, ale příliš velké může snížit rychlost.
Doufám, že to pomůže!