Data er alt, og følgelig SQL eroveralt. Structured Query Language har blitt det mest brukte spørrespråket, og det støttes av de fleste moderne relasjonsdatabaseadministrasjonssystemer. Faktisk er bruken av den så utbredt at vi ofte omtaler databaseservere som SQL-servere. Språket definerer hvordan spørringer kan dannes for å trekke ut de nøyaktige dataene som kreves fra en database. Gitt mangfoldet av moderne databaser meddusinvis av sammenføyde tabeller, SQL-spørsmål kan være ganske kompliserte. Med ekstra kompleksitet kommer redusert ytelse. SQL-søkeoptimalisering lar en finjustere spørsmål slik at de returnerer riktig data så raskt som mulig. Optimalisering av SQL-spørsmål kan gjøres manuelt, men det finnes verktøy som hjelper deg med å optimalisere dem. Vi skal til å gjennomgå noen av de beste verktøyene vi har funnet.
Siden vi ønsker at alle skal være på samme side somvi gjennomgår de beste produktene, og begynner med å diskutere hva og det sjenerte med SQL-spørreoptimalisering. Deretter vil vi diskutere hovedfunksjonene i SQL-søkeoptimaliseringsverktøy. Ulike verktøy tilbyr forskjellige funksjoner, som du skal se. Vi vil gjøre vårt beste for å sortere de viktige funksjonene du bør se etter når du velger det beste verktøyet for dine spesifikke behov. Og til slutt vil vi gjennomgå de beste verktøyene vi kan finne.
SQL Query Optimization, Hva og hvorfor
Enkelt sagt er SQL spørreoptimalisering handlingen avanalysere SQL-spørsmål og bestemme den mest effektive utførelsesmekanismen. Det er ofte en prøve-og-feil-prosess der forskjellige spørsmål testes for å se hvilken som gir best ytelse, samtidig som du returnerer de etterspurte dataene. Spørringsoptimerere er noen ganger innebygd i databasesystemer, men eksterne, tredjepartsverktøy antas ofte å gi bedre ytelsesresultater. En typisk spørringsoptimerer vil generere en eller flere spørreplaner for hver spørring, som hver er en mekanisme som brukes til å kjøre spørringen. Ytelsen (dvs. utførelsestid) for hver måles, og den mest effektive spørringsplanen velges og brukes til å kjøre spørringen. Mens noen SQL-søkeoptimaliseringsverktøy er enklere hjelperapplikasjoner som krever mye menneskelig hjelp, gjør de beste systemene det meste av arbeidet sitt i bakgrunnen.
Her er et raskt eksempel på søkeoptimalisering. Hvis en bruker kjører en spørring som velger omtrent halvparten av tabellens data om gangen når serveren har stor oppgave med flere samtidige tilkoblinger. I en slik situasjon kan søkeoptimereren bestemme seg for å bruke en spørringsplan som bruker tabellindeksene for å tilfredsstille spørringen, basert på begrensede ressurser. Hvis du gjør det, kan du redusere søkets avløp på serverressursene. Hvis brukeren kjørte den samme spørringen på et annet tidspunkt da flere serverressurser var tilgjengelige, kunne spørringsoptimereren ha bestemt at ressursbegrensningen ikke var et problem og ikke bruker tabellindekser, og lastet hele tabellen i minnet.
Hovedtrekk ved verktøy for SQL Query Optimization
Som vi har bestemt, hovedfunksjonen til en SQLQuery Optimizer-verktøyet er å prøve å finne den beste måten å kjøre spørringen på ved å analysere forskjellige spørreplaner. Alle verktøyene som er gjennomgått her vil i det minste til det, men noen tilbyr mye mer funksjonalitet. La oss se på noen av hovedfunksjonene som ofte finnes i SQL-søkeoptimaliseringsverktøy.
Grunnleggende SQL Tuning
Dette er kjernefunksjonaliteten til SQL QueryOptimaliseringsverktøy. Det er prosessen med å skrive om SQL-setninger på en annen måte med målet å forbedre resultatene til spørringen mens du fortsatt får det samme resulterende datasettet. Verktøyet fungerer ved å måle spørringens utførelsestid for de forskjellige versjonene av spørringen (spørringsplaner) og velge den som kjøres raskest.
Support for database motorer
De fleste verktøy vil i det minste støtte det vanligstedatabasemotorer som Microsoft SQL, Oracle, MySQL, PostgreSQL og MariaDB. Andre vil støtte et bredere utvalg, og andre vil likevel bare støtte et. Det er viktig å velge et verktøy som kan støtte alle motorene du bruker,
Skybasert databasestøtte
Noen SQL-søkeoptimaliseringsverktøy kananalysere og optimalisere skybaserte databaser som Microsoft SQL Azure eller AWS RDS. Cloud support varierer veldig fra verktøy til verktøy. Igjen, det er viktig å velge en som støtter det du har. Vær oppmerksom på at de fleste verktøy som støtter skydatabaser, også støtter lokale.
De beste verktøyene og programvaren for optimalisering av SQL-spørring
Tiden er endelig kommet for å avsløre - oggjennomgang — de beste SQL-søkeoptimaliseringsverktøyene og programvaren vi kunne finne. Listen vår har mange forskjellige typer verktøy, som hver bringer sin egen vri til optimalisering. Våre viktigste inkluderingskriterier var at hvert produkt i det minste hjalp manuelt å optimalisere SQL-spørringer - de fleste gjør det automatisk - og at de fungerte som annonsert. Vi ønsker ikke å la deg kaste bort tid på produkter som ikke gjør det de burde.
1. SolarWinds Database Performance Analyzer (Gratis prøveperiode)
Vårt første produkt er fra SolarWinds, et selskapsom har hatt et utmerket rykte for å lage noen av de beste verktøyene for nettverks- og systemadministrasjon i det meste av tjuetalls år med eksistens. Flaggskipets produkt kalt SolarWinds Network Performance Monitor blir av mange sett på som en av de aller beste nettverksbåndbreddeovervåkingsprogramvarene. Noe av berømmelsen fra SolarWinds kommer også fra de mange gratis verktøyene den tilbyr. De er mindre verktøy som hver for seg adresserer en spesifikk oppgave for nettverksadministratorer. To utmerkede eksempler på disse verktøyene er Advanced Subnet Calculator og Kiwi Syslog Server.
For SQL Query-optimalisering er det du trenger, imidlertid SolarWinds Database Performance Analyzer (DPA), et databasehåndteringsverktøy bygget for SQL-spørringytelse overvåking, analyse og tuning. Den overvåker og analyserer dine SQL-databaseforekomster, og ved hjelp av en responstidsanalysemetode som setter hovedfokus på tiden mellom et spørringsforespørsel og det tilsvarende svaret fra databasen, analyserer ventetyper og hendelser for å kartlegge flaskehalsene i databasene.

- GRATIS PRØVEPERIODE: SolarWinds Database Performance Analyzer
- Last ned lenke: https://www.solarwinds.com/database-performance-analyzer
Verktøyet, som også er flott for feilsøkinghar et brukervennlig grensesnitt som hjelper deg med å finne problemer raskt og enkelt. Hovedskjermbildet lar deg se på databaseforekomster, ventetider, råd om spørsmål, CPU (med advarsler og kritiske varsler), minne, disk og økter.
Når du borer ned, er trendpanelet til aspesifikk database-forekomst viser deg i grafisk format de totale ventetidene (eller ditt valg av gjennomsnittlige eller typiske dagers ventetid) for brukere i løpet av en måned. På den grafen representerer hver farge en individuell SQL-setning, og gir deg en visuelt tiltalende representasjon av hvilket utsagn som tar lengst å kjøre.
Selv om dette produktet ikke er et sant SQL-spørsmåloptimaliseringsverktøy, noen av funksjonene kan hjelpe deg med det. For eksempel kan den overvåke og måle utførelsestid for spørring, og det vil også gi noen råd om avstemning, selv om det pleier å være relatert til databasekonfigurasjonen i stedet for spørringskoden.
Prisen for SolarWinds Database Performance Analyzer starter på $ 1 995 og varierer i henhold tilantall og type databaseforekomster som skal overvåkes. Skulle du ønske å gi produktet en testkjøring før du kjøper det, er en fullt funksjonell 14-dagers prøveversjon tilgjengelig.
2. SQL Query Tuner for SQL Diagnostic Manager
De SQL Diagnostic Manager er et av de mest tilgjengelige databaseovervåkingsverktøyene. Men når du utfyller den med SQL spørringstuner, det du får er en av de beste SQL-spørsmåleneoptimaliseringsverktøy. Fordelene er flere. Den identifiserer problematiske SQL-spørsmål via databaseprofilering av ventetidsanalyse. Det kan også gi deg automatisk genererte tuninganbefalinger med veiviseren for SQL-spørring. Verktøyet vil verifisere SQL-spørringsytelser gjennom belastningstesting i simulerte produksjonsmiljøer.
De SQL Query Tuner vil raskt og enkelt identifisere SQL-spørsmål somforårsake dårlig databaseytelse via databaseprofilering og vise en grafisk visualisering av ventetidsanalyse. Den vil overvåke en hel datakilde innen et konfigurerbart tidsrom med kontinuerlig profilering. Som resultat får du en bedre forståelse av hvordan SQL Server planlegger å utføre SQL-spørsmål og de forskjellige ytelseskostnadene.

Dette verktøyet vil presentere automatisk generertforeslåtte løsninger med veiviseren for SQL-spørsmål, som gir en essensiell kontekst for å stille inn SQL-spørringer. Den inneholder fargekodet indeksanalyse av brukte, ikke brukte og manglende indekser med anbefalinger for optimal ytelse. Du kan generere mulige tilfeller og finne det beste alternativet til en gitt SQL-setning ved å inkludere omskrivninger av SQL-spørringer og hintinjeksjoner.
De SQL Query-tuner har unike visuelle SQL spørringsstemningsdiagrammersom lar deg forstå effekten av SQL-setninger på databasen ved å bruke diagrammer i stedet for kompliserte utførelsesplaner. Indekser og begrensninger på tabeller og visninger vises med tabellstatistikk, og sammenføyningene som brukes i en SQL-setning (for eksempel kartesiske sammenføyninger, implisitte kartesiske sammenføyninger og mange-til-mange-forhold) med diagrammene.
Kontroller ytelsen til eksisterende ogalternative SQL-spørsmål mot databasen via belastningstesting. Konfigurer SQL-spørringer for å kjøre flere ganger parallelt og for å se hvordan de reagerer på simulerte produksjonsmiljøer uten risiko for å teste i produksjonen. Ved hjelp av dette verktøyet kan du stille inn SQL-spørsmål for SQL Server med dårlig ytelse fra et intuitivt grensesnitt.
De SQL Query Tuner er et tillegg til SQL Diagnostic Manager. Det du ikke allerede eier det produktet, begge kan kjøpes sammen som SQL Diagnostic Manager Pro for $ 2 156 per lisens er en gratis 14-dagers prøveperiode uten kredittkort også tilgjengelig fra produktets leverandør
3. SQL Server Management Studio
Hvis databaseserveren din er en Microsoft SQL Server, kanskje Microsofts eget verktøy, SQL Server Management Studio (SSMS), er alt du trenger. Som du kanskje vet, brukes verktøyet - som først ble lansert og først ble lansert med Microsoft SQL Server 2005 - til å konfigurere, administrere og administrere alle komponenter i Microsoft SQL Server. Den inkluderer både skriptredigerere og grafiske verktøy som fungerer med objekter og funksjoner i serveren. Det du kanskje ikke vet, er at et av SSMS-verktøyene, SQL Server Database Engine Tuning Advisor (DTA) kan brukes til SQL-spørreoptimalisering.

DTAs hovedformål er å analysere databaserog gi anbefalinger. I henhold til Microsofts offisielle dokumentasjon kan verktøyet hjelpe deg med å feilsøke ytelsen til et spesifikt problemspørsmål, stille et stort sett med spørsmål på tvers av en eller flere databaser, utføre en undersøkende hva-hvis-analyse av potensielle fysiske designendringer og administrere lagringsplass.
Noe av det beste med SQL Server Management Studio er prisen. Dette er et gratis verktøy fra Microsoft som du kan bruke til å administrere ikke bare SQL Server, men også Azure SQL Database. Det er kanskje ikke det mest brukervennlige verktøyet der ute, men gitt prisen, kan det være verdt å se på.
4. EverSQL
EverSQL er interessant, ettersom det er et av få verktøy for online SQL-optimalisering. Administratorer kan bruke dette verktøyet for å få spørsmål om tuning av spørsmål og forslag til forbedring av indeksering. Databasestøtte i EverSQL er noe begrenset. Den støtter imidlertid mest populære betalte og gratis databaser med åpen kildekode, inkludert MSSQL, Oracle, MySQL, MariaDB og PerconaDB. Faktisk, siden dette er et offline verktøy som ikke har forbindelse til databasen din, kan det teoretisk sett optimalisere og SQL-spørring, men det vil gjøre en bedre jobb hvis den vet hvilken type databasemotor som vil behandle den optimaliserte spørringen.

Å bruke verktøyet er superenkelt. Du kobler deg til nettstedet, velger din databasetype og -versjon og limer inn SQL-spørringskoden. For å få indekseringsanbefalinger og for å la verktøyet anvende avanserte spørringstransformasjoner, kan du eventuelt laste opp databasens skjemestruktur. Du klikker “Neste” og i løpet av sekunder får du den optimaliserte versjonen av spørringen sammen med noen indekseringsanbefalinger.
EverSQL gjør imidlertid ikke bare søkeoptimaliseringer. Noen få andre gratis og nyttige online verktøy tilbys også. Det er for eksempel en SQL Query Syntax Check & Validator, en Query Minifier for SQL Statements og en Query Formatter.
Prisstrukturen til EverSQL er enkelt. Du kan velge en gratis plan som gir deg en gratis søkeoptimalisering per dag i 30 dager. Dette er prøveplanen. Deretter har du den grunnleggende planen til $ 29 / month som inkluderer 10 månedlige optimaliseringer og Plus-planen på $ 135 / month med 30 optimaliseringer per måned og live chat support. Tilpassede planer kan også ordnes for å møte dine spesifikke behov.
5. SentryOne Plan Explorer
Planlegg Explorer er et gratis verktøy fra SentryOne. Det er en av de beste SQL-spørringsanalysene ogoptimaliseringsverktøy. Dette verktøyet kan hjelpe deg raskt å komme til roten til de tøffeste SQL Server-spørsmålene. Den er laget av flere moduler. Indeksanalysen bruker poengalgoritmer for å hjelpe deg med å bestemme den beste indeksen for å støtte et gitt spørsmål. Du kan enkelt se anbefalte indekser, opprette og endre indekser og oppdage og oppdatere gammel statistikk.
Statistikkanalysemodulen viser deginnvirkningen av kompilerte og runtime spørringsparametere på ytelsen. Dette lar deg raskt oppdage skjevheter som kan bidra til problemer med sniffing av parametere, visualisere potensielle stigende viktige problemer og identifisere muligheter for filtrerte indekser.

Resultater av profilering og avspilling av spørringmodulen vil spille av forespørsler på nytt og få tilgang til live-resultatstatistikken. Ved hjelp av dette verktøyet kan du spille av spørringsprofilen for å se nøyaktig hvilke operatører som legger mest belastning på systemressursene. Det er ikke nødvendig å kjøre spørringen på nytt.
Mens de fleste SQL-søkeoptimalisatorer bruker estimerte plankostnader, Planlegg Explorer kan vise de faktiske observerte kostnadene. Og du kan se kostnadsforskjellen ved å veksle mellom anslått og faktisk. Det er flere funksjoner i dette gratis verktøyet enn vi har tid til å presentere dem. Men siden det er et gratis verktøy, vil du kanskje prøve det og se selv.
6. dbForge Studio for SQL Server
Devart‘s dbForge Studio for SQL server er et alt-i-ett SQL-server GUI-verktøy som kan værebrukes til SQL Server-administrasjon, administrasjon, utvikling, datarapportering, analyse, optimalisering og mer. SQL-utviklere og databaseadministratorer kan bruke GUI-verktøyet til å fremskynde nesten alle komplekse databaseoppgaver som å designe databaser, skrive SQL-kode, sammenligne databaser, synkronisere skjemaer og data, generere meningsfulle testdata, blant andre.

dbForge Studio for SQL server inkluderer SQL Query Plan Tool, et dedikert søkeoptimaliseringsverktøy. Funksjonen for utførelsesplanskjema hjelper til med å visualisere og stille inn spørringsutførelsesplan ved å kartlegge de sakte utførende nodene. Verktøyets Vent-statistikk-fane lar deg enkelt oppdage potensielle flaskehalser i spørringen ved å vise en liste over hendelser og venter tilknyttet dem. Du kan også bruke verktøyets planketre for å få informasjon om hvordan SQL Server utfører en SELECT-setning. Det vil vise deg hvor du for eksempel kan øke ytelsen hvis du legger til en indeks til et bord eller optimaliserer tabellskjøting.
Verktøyet, som også er kjent som T-SQL Query Profiler, er innebygd i Standard, Profesional ogEnterprise-versjoner av dbForge Studio for SQL server som er priset til henholdsvis $ 249,95, $ 499,95 og $ 699,95. En gratis 30-dagers prøveversjon av hele produktet - ikke bare søkeordoptimaliseringsverktøyet - er tilgjengelig.
kommentarer