NLEN
Direct technisch advies?
Home > Blog

Zo krijg je je database weer fit en gezond

Dimitri Choustov 31-03-2020 2:34 PM
Categories: Beheer, BLOG, DBMS, MariaDB, MS SQL Server, MySQL, Oplossen, PostgreSQL, Tips

Bij OptimaData krijgen wij regelmatig de vraag om teleurstellende performance van database-omgevingen (zoals bijvoorbeeld SQL Server, MySQL of PostgreSQL) te onderzoeken. Door alle mogelijke variaties en combinaties in omgevingen is er niet één specifieke of direct aanwijsbare oorzaak voor zo’n performancevraagstuk. In deze blog legt Dimitri Choustov uit hoe je toch je database weer fit en gezond krijgt.

Talloze variaties en combinaties

Door de mogelijkheden die de huidige verregaande digitalisering biedt, is geen enkele databaseomgeving meer hetzelfde. De software om die data te verwerken is al even divers. Productiedatabases draaien tegenwoordig zowel op virtuele als op fysieke omgevingen. Er kan gebruik gemaakt worden van zowel flash-storage als van een gedeelte van een storage area network, in het geheel of gedeeltelijk bij de klant op locatie of in de cloud. Door al deze variaties en combinaties is er niet één specifieke of direct aanwijsbare oorzaak voor een performancevraagstuk. Om snel en efficiënt een beeld te vormen van de huidige staat van de databaseomgeving en te onderzoeken waar verbeteringen mogelijk zijn, werken we bij OptimaData met zogenaamde HealthChecks.

Best practices

Net als de organische wereld, bestaat de digitale wereld uit verschillende componenten. Elk component heeft voor zijn leefgebied een eigen richtlijn, oftewel een best practice. Zo wijken de richtlijnen voor een virtuele machine ten behoeve van applicatiesoftware af van de richtlijnen voor een virtuele machine ten behoeve van de databases. Best practices zorgen dat de foutkans wordt geminimaliseerd, en zorgen er ook voor dat een omgeving zo optimaal mogelijk presteert.

HealthCheck

De configuratie-eigenschappen van digitale componenten, zoals een virtuele machine, een instance in een relationeel databasemanagementsysteem of een database met de onderliggende objecten, spelen een belangrijke rol bij het functioneren van de software. De controle van de huidige configuratie van zo’n digitaal component in combinatie met de richtlijnen van de leverancier is de basis van onze HealthCheck. Met andere woorden, met de HealthCheck wordt de configuratie van de digitale componenten en de onderlinge samenhang ervan in kaart gebracht.

Controlespectrum

Het resultaat van zo’n HealthCheck geeft inzicht in de digitale wereld van de data. Als onderdeel hiervan checken we of de belangrijke onderhoudsprocessen aanwezig zijn, zodat de continuïteit en de beschikbaarheid van de omgeving gegarandeerd kan worden. Denk hierbij aan een periodieke back-up van de database, controle op de data-integriteit en uiteraard de indexmaintenance. Onze HealthCheck geeft voldoende inzicht om bepaalde vragen te beantwoorden, zoals: ‘de back-up van onze data is geregeld, maar is recovery ook mogelijk?’ of ‘zijn onze data gecontroleerd op integriteitsfouten?’

Serveroptimalisatie vóór querytuning

Zo kan ook de bron van een eventuele teleurstellende performance opgespoord worden. Een HealthCheck bevat verschillende controles op het gebied van algemene serverperformance. Denk bijvoorbeeld aan een SQL-query die wel volgens de regels is opgesteld maar waarvan de doorlooptijd toch te wensen overlaat. De optimale SQL-queryperformance kan alleen behaald worden op een geoptimaliseerd besturingssysteem, met geoptimaliseerde hardware en een geoptimaliseerd databasemanagementsysteem. De configuratie-eigenschappen van al deze objecten hebben invloed op de uiteindelijke doorlooptijd van een SQL-query.

HealthCheck periodiek uitvoeren

Als de server geoptimaliseerd is, de back-up van de database en de integriteitscontrole zijn ingericht, en de applicatie functioneert naar behoren, dan is het nog steeds nuttig om periodiek een HealthCheck uit te voeren. De reden? De database omgeving is onderhevig aan de groei van de business en dient van tijd tot tijd bijgesteld te worden. Naarmate de tijd vordert, zal de data blijven groeien, net als de vraag ernaar. Om de vraag naar die data efficiënt af te handelen, zijn bijvoorbeeld mogelijk nieuwe indexen nodig die de bestaande indexen vervangen. Met behulp van de HealthCheck kunnen we zowel ontbrekende als niet gebruikte indexen identificeren.

Maatwerk

Behalve eenmalige of reguliere HealthChecks, kunnen wij ook oplossingen op maat bieden. Zo kunnen we na een HealthCheck bijvoorbeeld SQL-queries opsporen die (te) veel serverresources consumeren, en daar een passend advies voor geven. Wij beschikken over HealthChecks voor SQL Server, PostgreSQL, MySQL/MariaDB, Oracle, Sybase en MongoDB-databases. Daarnaast beschikken wij over een uitgebreide repository aan best practices voor de meest voorkomende en gebruikelijke setups, zoals on-premise, cloud, hybride en virtuele machines in alle denkbare combinaties.

Is jouw database fit genoeg?

Neem vrijblijvend contact met ons op als je meer wilt weten over de mogelijkheden van een HealthCheck op jouw omgeving of als je je zorgen maakt om de performance van je databases.

Route naar effectief databasebeheer?

Wat is nu de route naar effectief databasebeheer? Wat zijn de valkuilen ? Om een aantal handvatten aan te reiken hebben we daar een whitepaper over geschreven.

Download hier de whitepaper.

Terug naar blogoverzicht

React