Databasesupport in de praktijk

Door: Eric Gipon 1-12-2022

Categorieën
:
Beheer, BLOG, DBMS, MariaDB, MySQL,

In eerdere blogs beschreven we al hoe je een database-supportpartner selecteert, hoe je je team moet voorbereiden en wat de drie fases van effectief databasesupport zijn. Maar hoe werkt het nu in de praktijk? In deze blog geeft Eric Gipon een voorbeeld van hoe we bij een van onze klanten te werk zijn gegaan.

MariaDB Galera Cluster met conflicten

Als je als organisatie werkt met datagedreven oplossingen, is een goed werkende databaseomgeving cruciaal, dat zal duidelijk zijn. Toch gaat dat weleens anders, zo bleek toen een organisatie ons inschakelde. Zij werken met een MariaDB Galera Cluster, een multi-mastercluster die op Linux draait. Ze hadden veel problemen met conflicten in hun database en die verstoorden hun bedrijfsvoering. Tijd om de hulp van OptimaData in te roepen.

QuickScan

Om te beginnen hebben we een QuickScan gedaan. Tijdens zo’n QuickScan – ook wel een database-assessment – nemen we de hele databaseomgeving en databasearchitectuur onder de loep. Zowel het logische als het technische datamodel, het hardwareplatform, de generieke instellingen, de performance, tuning, beschikbaarheid en disaster-recovery. Op basis van de uitkomsten van de QuickScan brengen we een rapport uit met onze bevindingen en aanbevelingen die we toelichten en bespreken met de opdrachtgever.

SQL-queries slim verdelen

Uit de Quick Scan kwam naar voren dat de conflicten werden veroorzaakt omdat er heel snel tegelijk geschreven werd op dezelfde database via de drie databaseservers van het Galera Cluster. We hebben om te beginnen een aantal aanpassingen in de configuratie gedaan, om te set-up te optimaliseren. Daarbovenop hebben we ProxySQL geïnstalleerd, een tool die proxy-functionaliteit voor MySQL-databases levert, zodat inkomende SQL-queries en andere activiteiten op de meest optimale manier over de databasecluster – het Galera Cluster in dit geval – worden gedistribueerd.

Lezen en schrijven

Om toekomstige problemen te voorkomen hebben we de set-up ook zo aangepast dat er alleen maar wordt geschreven naar de ene databaseserver en gelezen op de andere databaseservers. Dat lijkt in strijd met waar een Galera Cluster voor bedoeld is, die kan namelijk tegelijk schrijven en lezen. Maar ook de hoge beschikbaarheid van het Galera Cluster is een groot voordeel van deze oplossing: als een server uitvalt kan er op een geautomatiseerde manier naar een andere server geschreven worden.

Alerting- en monitoringtools

Daarnaast hebben we Percona Monitoring and Management en Zabbix bij deze klant geïnstalleerd, twee alerting- en monitoringtools waar we goede ervaringen mee hebben. De eerste geeft alerts af op basis van zelfingestelde triggers, de tweede is een monitoringtool die als het ware onder de motorkap kijkt, naar wat er binnen de databaseomgeving gebeurt, welke queries draaien er en hoe vaak. Zo kunnen we nog beter (proactief) identificeren waar mogelijk bottlenecks kunnen optreden.

Stabiele set-up

Na deze initiële acties heeft deze – zeer tevreden – klant een onderhoudscontract met ons afgesloten. Ze kunnen ons een aantal uur per maand inschakelen en bij productieproblemen leveren we 24/7 support. De alerts die de hiervoor genoemde tools genereren, komen dan ook direct bij ons terecht. Deze set-up zorgt voor zoveel stabiliteit en performanceverbeteringen dat we deze, of enigszins vergelijkbare, set-up ook bij andere klanten adviseren en implementeren.

Meer weten?

Wil je meer weten over de route naar effectief databasebeheer? Daar schreven wij een whitepaper over. Download hier de whitepaper. Heb je interesse in een QuickScan of wil je eens met ons van gedachten wisselen? Neem gerust contact met ons op, we leren je graag kennen.

Andere blogs rond hetzelfde onderwerp:

Hoe selecteer je een databasesupport partner

Je team voorbereiden op outsourcing

3 fasen van effectief databasesupport

Terug naar blogoverzicht