Innehållsförteckning:
Definition - Vad betyder Query Optimizer?
En frågaoptimerare är en kritisk databashanteringssystem (DBMS) -komponent som analyserar SQL-frågor (Structured Query Language) och bestämmer effektiva exekveringsmekanismer. En frågaoptimerare genererar en eller flera frågeplaner för varje fråga som var och en kan vara en mekanism som används för att köra en fråga. Den mest effektiva frågeflanen väljs och används för att köra frågan.
Databasanvändare interagerar vanligtvis inte med en frågaoptimerare, som fungerar i bakgrunden.
Techopedia förklarar Query Optimizer
SQL-frågor kan vara enkla eller komplexa uttalanden. Varje SQL-uttalande kräver minimal användning av värdefulla resurser, till exempel hårddiskläsare och serverminne. Frågeoptimeraren säkerställer detta såväl som snabbt körning av varje SQL-fråga. Exempelvis kan en frågaoptimerare generera en serie frågeformer baserade på resurskostnader. En frågeplan kan innebära att du läser en tabell för att hämta en delmängd av dess data, medan en annan kan innebära att du använder tabellindex för snabb dataläsning. Dessa är kända som kostnadsbaserade optimisatorer.
En frågaoptimerare kan välja olika frågeplaner för samma fråga, beroende på miljöförhållanden. Till exempel kör en användare en fråga som väljer ungefär hälften av tabellens data. Användaren kör frågan när servern har ett kraftigt uppdrag med flera samtidiga anslutningar. I det här scenariot kan frågaoptimeraren besluta att använda en frågeplan som anropar de skapade tabellindexen för att tillfredsställa frågan, baserat på begränsade resurser. Detta säkerställer minimal dräneringsserver från frågan. Genom att köra samma fråga vid en annan tidpunkt med fler resurser, kan sökfrågeoptimeraren avgöra att resursbegränsning inte är ett problem. I det här fallet kommer inte tabellindex att användas, och frågaoptimeraren tillåter fullständig tabellbelastning till serverminnet.
