Jeg har for nylig opgraderet til 11.2.0.2 fra 11.1.0.7. Umiddelbart efter opgraderingen bemærkede jeg en stigning i vores genopbygningsgeneration. Jeg har også bemærket tabeller med navne som DBMS_TABCOMP_TEMP_UNCMP og DBMS_TABCOMP_TEMP_CMP. Hvad laver disse tabeller i mine produktionsskemaer, og hvordan kom de dertil? Efter at have gravet, kunne jeg finde ud af, at disse er skabt af den nye 11gR2 Compression Advisor. I løbet af det natlige vedligeholdelsesvindue vil et planlagt job se på dine tabeller og tage et undersæt af data og indlæses i en ukomprimeret tabel (UNCMP). Det vil derefter komprimere dine data (CMP) og bestemme komprimeringsforholdet baseret på dine faktiske data. Hvis kompressionsforholdet er over en vis tærskel, anbefaler rådgiveren tabellen for kompression. Efter at Compression Advisor er færdig, slettes tabellerne.
Problemet er, at Compression Advisor genererer et væld af redo! Dette er blevet noteret som upubliceret fejl 8896202. Mere information kan findes på Metalink Note 1284972.1, hvis du er interesseret.
Jeg vil ikke bruge Compression Advisor, så jeg vil gerne slå det natlige job fra. Desværre er jobbet en del af Space Advisor, og jeg kan ikke slukke for Compression Advisor alene. Nå, gengenereringshastigheden er simpelthen for høj, og jeg tror også, jeg kan leve uden Space Advisor, så det går i gang:
SQL> exec dbms_auto_task_admin.disable(client_name=>'auto space advisor',operation=>null,window_name=>null);
PL/SQL procedure successfully completed.
Jeg kan se, at der er indgivet en forbedringsanmodning for at afkoble Compression Advisor fra Space Advisor.