Using Re-Optimization in MySQL to Improve the Handling of Sub-optimal Query Plans

Effektiv innhenting av data er avgjørende for kvaliteten til mange forskjellige applikasjoner og systemer i et datadrevet samfunn. Grunnlaget for effektiv lagring, administrasjon og henting av data gis av databasesystemer. Med så høy avhengighet av databaser er responshastigheten avgjørende. Gjennom...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Elton, Hermann O, Rosendahl, Olaf
Format: Dissertation
Sprache:eng
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Effektiv innhenting av data er avgjørende for kvaliteten til mange forskjellige applikasjoner og systemer i et datadrevet samfunn. Grunnlaget for effektiv lagring, administrasjon og henting av data gis av databasesystemer. Med så høy avhengighet av databaser er responshastigheten avgjørende. Gjennom en økning i databasebruk kan de originale databasedesignene og optimaliseringsteknikkene vise seg som utilstrekkelige, ettersom datavolumene øker eksponentielt og bruksmønstrene endres. Dette kan resultere i ineffektivitet og dårligere ytelse. Nåværende databasesystemer er sterkt avhengige av kardinalitetsestimater for å effektivt utføre spørringer. Disse estimatene er avgjørende for databaseytelsen, og store avvik kan skade ytelsen. Re-optimalisering er en teknikk som prøver å håndtere denne utfordringen ved å samle inn statistikk under utføring av spørringer. Hvis estimatene er vesentlig feil startes optimalisering på nytt og innsamlet statistikk erstatter estimatene som var feil. Vi har ikke funnet noen tidligere forsøk på å implementere re-optimalisering i MySQL. Gjennom implementering av re-optimalisering i MySQL og flere eksperimenter, viser denne studien hvordan re-optimalisering i MySQL kan forbedre ytelsen for kjøring av spørringer betydelig. Implementasjonen setter inn sjekkpunkter i spørringsplanen til en databasespørring. Når et sjekkpunkt oppdager store avvik mellom estimater og antall behandlede rader, startes re-optimalisering for å rette feilen. Resultatene viser at med riktig konfigurasjon for når re-optimalisering skal startes, kan kjøretiden for spørringer reduseres med opptil 28 %. Selv om kun én benchmark og ett datasett har blitt testet mot implementeringen, viser resultatene at re-optimalisering med nesten hvilken som helst konfigurasjon, forbedrer ytelsen.