De DB2 RUNSTATS commando update de catalogus statistieken die worden gebruikt door de database- optimizer . De optimizer bepaalt het pad dat uw vraag zal nemen om uw resultaten het snelst terug . Als tabellen groeien RUNSTATS erg tijdrovend omdat het de data en kruisverwijzing naar de indexen op die tafel te verwerken . Queryprestatie zal beginnen te degraderen als de catalogus statistieken niet worden up to date gehouden . Wanneer moet RUNSTATS Execute uitvoeren RUNSTATS nadat gegevens in een tabel is geladen wanneer statistieken niet worden verzameld op de last . Het is ook een goed idee om RUNSTATS voeren na een nieuwe index wordt gemaakt , na het uitvoeren van REORG , nadat de prefetch grootte is gewijzigd en na het uitvoeren van de " Verdeel databasepartitiegroep " utility . RUNSTATS moet ook worden uitgevoerd na uitgebreide inserts , updates of verwijdert zijn uitgevoerd op een tafel . Verminder Prestatie Impact Vermijd het uitvoeren RUNSTATS op tafels die het niet nodig het. Bij het uitvoeren op een high- volume tafel , identificeren alleen kolommen gebruikt in SQL- predikaten als die om statistische gegevens te verzamelen over . Het plannen van de uit te voeren commando bij laag - volume tijden is ook belangrijk . Throttling kan ook worden gebruikt om de hoeveelheid verbruikt door database- activiteiten middelen te beperken . Hoe Throttling werken De database-instance is geconfigureerd om gas te gebruiken door util_impact_lim tot een waarde van nul tot 100 . Honderd is de standaard en kan geen enkele throttling wordt uitgevoerd . Het getal staat voor welk percentage van de werklast moet worden toegewezen aan een hulpprogramma commando zoals RUNSTATS . Bijvoorbeeld, als util_impact_lim is ingesteld op 20 , RUNSTATS zou 20 procent van de werklast verbruiken terwijl waardoor gebruikers toegang tot de database . Automatische Statistieken Collection munten Set AUTO_MAINT op ON , zet AUTO_TBL_MAINT op ON en zet auto_runstats op ON om automatisch verzamelen van statistieken in te schakelen. Deze functie is nieuw in DB2 UDB 8.2 . Deze functie automatisch RUNSTATS op de achtergrond uitvoert als dat nodig is. Het wordt aanbevolen om zijn throttling ingeschakeld bij gebruik van automatische verzameling van statistieken .
|