In een tijd waarin cloudgebaseerde databases steeds zwaarder worden belast, staat efficiënt geheugenbeheer centraal in het streven naar betere prestaties en kostenbesparing. Het Chinese techbedrijf Alibaba Cloud introduceert Eigen+.
Eigen+ is een clusterbeheersysteem dat memory over-subscription mogelijk maakt zonder in te boeten op betrouwbaarheid of servicekwaliteit.
Memory over-subscription is een techniek waarbij meer geheugen aan workloads wordt toegewezen dan fysiek beschikbaar is, in de veronderstelling dat niet alle toepassingen hun maximale geheugen tegelijkertijd gebruiken. Hoewel deze aanpak leidt tot efficiënter gebruik van infrastructuur, brengt ze ook risico’s met zich mee, zoals Out of Memory (OOM)-fouten die leiden tot downtime en het niet nakomen van service level objectives (SLO’s).
Betere voorspelbaarheid
Traditionele methoden voorspellen geheugenverbruik op basis van historische gegevens en passen bin packing-algoritmen toe om workloads optimaal over servers te verdelen. Maar bij hoge belasting zijn voorspellingen vaak onnauwkeurig, met alle gevolgen van dien. Alibaba Cloud richt zich met Eigen+ op een ander perspectief. Volgens de Pareto-principes blijkt een klein deel van de database-instanties verantwoordelijk te zijn voor het merendeel van de OOM-fouten. Door deze zogeheten transient instances te identificeren en afzonderlijk te behandelen, slaagt Eigen+ erin de voorspelbaarheid te vergroten. En tegelijkertijd de over-subscriptie veilig op te voeren.
In plaats van complexe tijdreeksmodellen te gebruiken, transformeert Eigen+ het probleem van voorspelling naar classificatie. Met machine learning worden database-instanties geanalyseerd op basis van zowel runtime (zoals geheugengebruik en queries per seconde) als niet-runtime eigenschappen (zoals klantniveau en instance-specificaties). Op basis van dit profiel bepaalt het systeem of een instantie stabiel genoeg is voor over-subscriptie. Transient instances, waarvan het gedrag moeilijk te voorspellen is, worden uitgesloten van over-subscriptie om risico’s te minimaliseren.
Eigen+ maakt gebruik van een hybride scheduler die rekening houdt met deze classificatie en die tegelijkertijd via logistische regressie de impact van geheugenverbruik op SLO-compliance modelleert. Op deze manier wordt een maximaal veilige geheugendrempel bepaald per machine, zodat over-subscriptie de betrouwbaarheid van de diensten niet schaadt.
Indrukwekkende resultaten
De resultaten in de productieomgeving zijn indrukwekkend. In een online MySQL-cluster steeg de gemiddelde geheugentoewijzing met meer dan 36%, van 75,67% naar 111,88%, zonder dat OOM-fouten werden geregistreerd. De beschikbaarheid van de diensten bleef binnen de overeengekomen SLO-parameters. Dit succes wordt mede mogelijk gemaakt door fallback-mechanismen zoals live migratie van database-instanties bij dreigende overschrijding van geheugendrempels.
Eigen+ bewijst dat intelligent geheugenbeheer in cloudomgevingen niet hoeft te leunen op fragiele voorspellingen, maar robuust kan worden ingericht door kritieke afwijkingen te identificeren en te isoleren.