Optimere ydeevnen med ekskluderede kolonner

Det er almindeligt, at analyser indeholder ubenyttede kolonner. Kolonner, der ikke er påkrævede, men alligevel er valgt, forringer ydeevnen betydeligt. Dette emne forklarer, hvordan du forbedrer ydeevnen ved at fjerne eventuelle kolonner, der ikke er påkrævede.

Identificere ubenyttede kolonner

Når du inkluderer kolonner i analysen, der er ekskluderet fra visningen (i dette eksempel Year), påvirker du ydeevnen ved at:
  • Forøge mængden af data, der skal hentes fra databasen
  • Forøge antallet af kolonner, der skal hentes og behandles
  • Tvinge analysen til at beregne resultater på flere aggregeringsniveauer

Følgende figur viser en simpel rapport med antallet af kunder efter region og år.

Beskrivelse af GUID-39B953E5-433E-4991-B3BA-BB1064CE8D83-default.jpg følger
.jpg

Den viste rapport er en graf, der viser antallet af kunder efter region. Du kan se, at kolonnen Year er ekskluderet.

Beskrivelse af GUID-CFF82673-4988-4185-915E-0F1AA5027E42-default.jpg følger
.jpg

Logisk forespørgsel med ubenyttet kolonne for Year

Selvom kolonnen Year ikke vises i visningen, er den stadig valgt som en del af den logiske forespørgsel.

Beskrivelse af GUID-104759F4-A6F4-4366-ACD6-472BA2931E18-default.jpg følger
.jpg

Når kolonnen Year inkluderes i analysen, har det følgende virkning:
  • Yderligere kolonner hentes og behandles.
  • Yderligere rækker hentes og behandles, fordi antallet af kunderækker ikke kun vælges efter region, men også efter år.
  • Yderligere aggregering er påkrævet.

Fysisk forespørgsel med ubenyttet kolonne for Year

Hvis du gennemser den fysiske forespørgsel, kan du identificere steder, hvor ydeevnen påvirkes.

Beskrivelse af GUID-D9F85168-B448-49BE-9261-78270C01784C-default.jpg følger
.jpg

Dette eksempel viser SELECT count distinct fra aggregeringsreglen for kundenr. I nogle situationer påvirker den også rapporter med en sumaggregeringsregel. Den genererede forespørgsel i dette scenarie bruger også et grupperingssæt. På databaseniveauet kan den vælge mange rækker (millioner) og derefter måtte gruppere efter Year og Region, samt Region. Dette kan helt unødigt forbruge betydelige databaseressourcer.

Fjerne ubenyttede kolonner

Fjern kolonnen Year, og analyser, hvordan det påvirker de logiske og fysiske forespørgsler, der genereres.

Logisk forespørgsel, efter kolonnen Year er fjernet

Nu indeholder den logiske forespørgsel ikke kolonnen Year, og - mere vigtigt - rapportaggregeringen er fjernet.

Beskrivelse af GUID-A28E8FC3-37ED-4350-866C-A9BC58356833-default.jpg følger
.jpg

Fysisk forespørgsel, efter kolonnen Year er fjernet

Den fysiske forespørgsel er meget enklere, nu hvor den ikke inkluderer grupperingssæt, og antallet af valgte records er væsentligt reduceret.

Beskrivelse af GUID-96421968-C978-4383-853C-EAACB0079CEB-default.jpg følger
.jpg

Ved at gennemse analysen af rapporter med dårlig ydeevne, og i det første tilfælde simpelthen fjerne overflødige, ubenyttede kolonner, kan du opnå en betydeligt bedre ydeevne. Den genererede fysiske forespørgsel har reduceret kompleksitet, og der returneres færre records, og derfor kræves der mindre behandling.