| Workshop i Struktureret SQL tuning
Mange udviklere, som skriver SQL sætninger, har en
god fornemmelse af, hvorledes deres SQL skal udføres for at opnå
en fornuftig svartid.
Imidlertid sker det alligevel jævnligt, at der er behov for få
en SQL til at køre hurtigere – specielt når datamængderne
vokser eller en søgning er kompleks.
Det er her ikke altid tilstrækkeligt at kende datamodellen
og have viden om index og “explain plan”. Det vil nemlig ofte
være nødvendigt med en struktureret metode til at analysere
problemet, således at man kan komme med relevante forbedringsforslag,
da det vil være for kompliceret eller tidskrævende at eksperimentere
sig frem til en løsning.
En workshop i struktureret SQL tuning kan derfor være
en god investering, da der derved kan opnås en sikkerhed i at kunne
identificere performancemæssige forbedringsmuligheder uden at skulle
forlade sig på eksperimenter og gætværk.
Denne workshop i struktureret SQL tuning gennemføres
typisk for en gruppe af udviklere og måske nogle DBA'ere, som kommer
fra samme firma eller afdeling.
Workshoppen indledes med at beskrive en struktureret metode
til tuning af SQL sætninger med basis i at identificere flaskehalse
og overflødigt udført arbejde i sætningen (også
kendt som “bortsmidningsmetoden” eller “eliminating
throw-away”).
Derefter gennemgår deltagerne nogle øvelseseksempler,
som skal løses med anvendelse af metoden.
Afslutningsvis kan deltagerne medbringe eksempler på
de problemer, som der måtte være i konkrete projekter.
Disse problemer kan så gennemgås fælles eller danne
basis for øvelser.
Erfaringsmæssigt har denne sidste del af workshoppen
illustreret meget tydeligt for deltagerne, at der var store fordele ved
at anvende den beskrevne metode – bl.a. fordi den gør det
muligt at identificere problemets årsag uden at man skal kende til
hele datamodellen og dens anvendelse.
Udtalelse fra tidligere afholdelse: “Nu har vi brugt
3 uger på at få sætningen til at køre 4 gange
hurtigere – og med bortsmidningsmetoden fandt vi 4 ganges yderligere
forbedring på en time” (sagt om et medbragt eksempel).
Varigheden af workshoppen kan typisk sættes til 1
eller 2 dage – alt efter deltagernes forudgående viden om
“explain plan” og erfaringer med tuning.
Workshoppen kan udvides med en gennemgang for eksempel af
index, materialisede views eller problematiske SQL-konstruktioner.
Den beskrevne metode kan umiddebart anvendes både
på Oracle10g, Oracle9i, Oracle8i – og med mindre justeringer
også for Oracle8 og Oracle7.
|