Övervakning + lasttestning = förutsägelse och inga fel

VTB IT-avdelning fick flera gånger hantera nödsituationer i driften av system, då belastningen på dem ökade många gånger om. Därför fanns det ett behov av att utveckla och testa en modell som skulle förutsäga toppbelastning på kritiska system. För att göra detta satte bankens IT-specialister upp övervakning, analyserade data och lärde sig att automatisera prognoser. Vi kommer att berätta i en kort artikel vilka verktyg som hjälpte till att förutsäga belastningen och om de hjälpte till att optimera arbetet.

Övervakning + lasttestning = förutsägelse och inga fel

Problem med högbelastningstjänster uppstår i nästan alla branscher, men för finanssektorn är de kritiska. Vid timme X måste alla stridsförband vara redo, och därför var det nödvändigt att veta i förväg vad som kunde hända och till och med bestämma dagen när lasten skulle hoppa och vilka system som skulle stöta på den. Misslyckanden måste hanteras och förebyggas, så behovet av att implementera ett prediktivt analyssystem diskuterades inte ens. Det var nödvändigt att modernisera system baserade på övervakningsdata.

Analys på dina knän

Löneprojektet är ett av de mest känsliga vid misslyckande. Det är det mest begripliga för prognoser, så vi bestämde oss för att börja med det. På grund av hög anslutning kan andra delsystem, inklusive fjärrbanktjänster (RBS), uppleva problem vid toppbelastningar. Till exempel började kunder som var nöjda med SMSet om mottagandet av pengar att aktivt använda det. Lasten kunde hoppa med mer än en storleksordning. 

Den första prognosmodellen skapades manuellt. Vi tog uppladdningarna för det senaste året och beräknade på vilka dagar de maximala topparna förväntas: till exempel den 1:a, 15:e och 25:e, samt de sista dagarna i månaden. Denna modell krävde betydande arbetskostnader och gav ingen korrekt prognos. Ändå identifierade den flaskhalsar där det var nödvändigt att lägga till hårdvara, och gjorde det möjligt att optimera processen för att överföra pengar genom att komma överens med ankarkunder: för att inte ge löner i ett svep fördelades transaktioner från olika regioner över tiden. Nu bearbetar vi dem i delar som bankens IT-infrastruktur kan "tugga" utan att misslyckas.

Efter att ha fått det första positiva resultatet gick vi vidare till att automatisera prognoser och ytterligare ett dussin kritiska områden väntade på sin tur.

Omfattande tillvägagångssätt

VTB har implementerat ett övervakningssystem från MicroFocus. Därifrån tog vi datainsamling för prognoser, ett lagringssystem och ett rapporteringssystem. I själva verket var övervakning redan på plats, allt som återstod var att lägga till mätvärden, en prediktionsmodul och skapa nya rapporter. Detta beslut stöds av den externa entreprenören Technoserv, så huvudarbetet med att genomföra projektet föll på dess specialister, men vi byggde modellen själva. Prognossystemet gjordes baserat på Prophet, en öppen källkodsprodukt utvecklad av Facebook. Det är lätt att använda och integreras enkelt med våra installerade integrerade övervakningsverktyg och Vertica. Grovt sett analyserar systemet belastningsgrafen och extrapolerar den utifrån Fourierserier. Det är också möjligt att lägga till vissa koefficienter per dag, hämtade från vår modell. Mätvärden tas utan mänsklig inblandning, prognosen räknas om automatiskt en gång i veckan och nya rapporter skickas till mottagarna. 

Detta tillvägagångssätt identifierar de viktigaste cyklikaliteterna, till exempel årlig, månadsvis, kvartalsvis och veckovis. Utbetalningar av löner och förskott, semesterperioder, semester och försäljning – allt detta påverkar antalet samtal till systemen. Det visade sig till exempel att vissa cykler överlappar varandra, och huvudbelastningen (75%) på systemen kommer från Central Federal District. Juridiska personer och individer beter sig olika. Om belastningen från "fysiker" är relativt jämnt fördelad över veckodagarna (detta är många små transaktioner), så går 99,9% för företag åt arbetstid, och transaktioner kan vara korta eller kan behandlas inom flera minuter eller till och med timmar.

Övervakning + lasttestning = förutsägelse och inga fel

Baserat på erhållen data bestäms långsiktiga trender. Det nya systemet har avslöjat att människor flyttar en masse till fjärrbanktjänster. Alla vet detta, men vi förväntade oss inte en sådan omfattning och trodde först inte på det: antalet samtal till bankkontor minskar extremt snabbt, och antalet fjärrtransaktioner växer med exakt samma mängd. Följaktligen ökar också belastningen på systemen och kommer att fortsätta att växa. Vi prognostiserar nu belastningen till februari 2020. Normala dagar kan förutsägas med ett fel på 3 % och toppdagar med ett fel på 10 %. Detta är ett bra resultat.

Fallgropar

Som vanligt var detta inte utan svårigheter. Extrapolationsmekanismen som använder Fourier-serien korsar inte noll bra - vi vet att juridiska personer genererar få transaktioner på helgerna, men prediktionsmodulen producerar värden som är långt ifrån noll. Det gick att korrigera dem med tvång, men kryckor är inte vår metod. Dessutom var vi tvungna att lösa problemet med att smärtfritt hämta data från källsystem. Regelbunden insamling av information kräver seriösa datorresurser, så vi byggde snabba cachar med hjälp av replikering och tar emot affärsdata från repliker. Frånvaron av ytterligare belastning på mastersystemen i sådana fall är ett blockeringskrav.

Nya utmaningar

Den enkla uppgiften att förutsäga toppar löstes: det har inte förekommit några överbelastningsrelaterade misslyckanden i banken sedan maj i år, och det nya prognossystemet spelade en viktig roll i detta. Ja, det visade sig inte räcka, och nu vill banken förstå hur farliga topparna är för den. Vi behöver förutsägelser med hjälp av mätvärden från belastningstestning, och för cirka 30 % av kritiska system fungerar detta redan, resten håller på att få förutsägelser. I nästa steg kommer vi att förutsäga belastningen på system, inte i affärstransaktioner, utan i termer av IT-infrastruktur, det vill säga vi kommer att gå ner ett lager. Dessutom måste vi helt automatisera insamlingen av mätvärden och konstruktionen av prognoser baserade på dem, för att inte ta itu med nedladdningar. Det finns inget märkvärdigt med det – vi korsar bara övervakning och belastningstester i linje med globala bästa praxis.

Källa: will.com

Lägg en kommentar