Overvåking + lasttesting = prediksjon og ingen feil

VTB IT-avdeling måtte flere ganger håndtere nødsituasjoner i driften av systemer, da belastningen på dem økte mange ganger. Derfor var det behov for å utvikle og teste en modell som skulle forutsi toppbelastning på kritiske systemer. For å gjøre dette satte bankens IT-spesialister opp overvåking, analyserte data og lærte å automatisere prognoser. Vi vil fortelle deg i en kort artikkel hvilke verktøy som hjalp til med å forutsi belastningen og om de bidro til å optimalisere arbeidet.

Overvåking + lasttesting = prediksjon og ingen feil

Problemer med høybelastningstjenester oppstår i nesten alle bransjer, men for finanssektoren er de kritiske. Ved time X må alle kampenheter være klare, og derfor var det nødvendig å vite på forhånd hva som kunne skje og til og med bestemme dagen da lasten skulle hoppe og hvilke systemer som ville møte den. Feil må håndteres og forhindres, så behovet for å implementere et prediktivt analysesystem ble ikke engang diskutert. Det var nødvendig å modernisere systemer basert på overvåkingsdata.

Analytics på knærne

Lønnsprosjektet er et av de mest sensitive ved feil. Det er det mest forståelige for prognoser, så vi bestemte oss for å begynne med det. På grunn av høy tilkobling kan andre undersystemer, inkludert eksterne banktjenester (RBS), oppleve problemer i perioder med toppbelastning. For eksempel begynte kunder som var fornøyd med SMS-en om mottak av penger å bruke den aktivt. Lasten kan hoppe med mer enn en størrelsesorden. 

Den første prognosemodellen ble laget manuelt. Vi tok opplastingene for det siste året og beregnet på hvilke dager de maksimale toppene forventes: for eksempel den 1., 15. og 25. samt de siste dagene i måneden. Denne modellen krevde betydelige arbeidskostnader og ga ikke en nøyaktig prognose. Likevel identifiserte den flaskehalser der det var nødvendig å legge til maskinvare, og gjorde det mulig å optimalisere prosessen med å overføre penger ved å avtale med ankerkunder: For ikke å gi lønn i en slurk, ble transaksjoner fra ulike regioner fordelt over tid. Nå behandler vi dem i deler som bankens IT-infrastruktur kan «tygge» uten feil.

Etter å ha mottatt det første positive resultatet, gikk vi videre til å automatisere prognoser. Et dusin flere kritiske områder ventet på tur.

Integrert tilnærming

VTB har implementert et overvåkingssystem fra MicroFocus. Derfra tok vi datainnsamling for prognoser, et lagringssystem og et rapporteringssystem. Faktisk var overvåking allerede på plass, alt som gjensto var å legge til beregninger, en prediksjonsmodul og lage nye rapporter. Denne beslutningen støttes av den eksterne entreprenøren Technoserv, så hovedarbeidet med å implementere prosjektet falt på spesialistene, men vi har bygget modellen selv. Prognosesystemet ble laget basert på Prophet, et åpen kildekode-produkt utviklet av Facebook. Det er enkelt å bruke og integreres enkelt med våre installerte integrerte overvåkingsverktøy og Vertica. Grovt sett analyserer systemet lastgrafen og ekstrapolerer den basert på Fourier-serier. Det er også mulig å legge til enkelte koeffisienter etter dag, hentet fra vår modell. Målinger tas uten menneskelig innblanding, prognosen beregnes automatisk en gang i uken, og nye rapporter sendes til mottakerne. 

Denne tilnærmingen identifiserer hovedsyklalitetene, for eksempel årlig, månedlig, kvartalsvis og ukentlig. Utbetalinger av lønn og forskudd, ferieperioder, ferier og salg – alt dette påvirker antall oppringninger til systemene. Det viste seg for eksempel at noen sykluser overlapper hverandre, og hovedbelastningen (75%) på systemene kommer fra Central Federal District. Juridiske enheter og enkeltpersoner oppfører seg forskjellig. Hvis belastningen fra "fysikere" er relativt jevnt fordelt over ukedagene (dette er mange små transaksjoner), så brukes 99,9 % på arbeidstid for bedrifter, og transaksjoner kan være korte, eller kan behandles innen flere minutter eller til og med timer.

Overvåking + lasttesting = prediksjon og ingen feil

Basert på innhentede data bestemmes langsiktige trender. Det nye systemet har avslørt at folk flytter massevis til eksterne banktjenester. Alle vet dette, men vi forventet ikke en slik skala og trodde først ikke på det: Antall anrop til bankkontorer synker ekstremt raskt, og antallet eksterne transaksjoner vokser med nøyaktig samme beløp. Følgelig vokser også belastningen på systemene og vil fortsette å vokse. Vi anslår nå belastningen frem til februar 2020. Normale dager kan predikeres med en feil på 3 %, og toppdager med en feil på 10 %. Dette er et godt resultat.

Fallgruver

Som vanlig var dette ikke uten vanskeligheter. Ekstrapoleringsmekanismen ved bruk av Fourier-serien krysser ikke null godt - vi vet at juridiske enheter genererer få transaksjoner i helgene, men prediksjonsmodulen produserer verdier som er langt fra null. Det var mulig å korrigere dem med makt, men krykker er ikke vår metode. I tillegg måtte vi løse problemet med å smertefritt hente data fra kildesystemer. Regelmessig innsamling av informasjon krever seriøse dataressurser, så vi bygde raske cacher ved hjelp av replikering og mottar forretningsdata fra replikaer. Fravær av ekstra belastning på mastersystemene i slike tilfeller er et blokkeringskrav.

Nye utfordringer

Den enkle oppgaven med å forutsi topper ble løst: det har ikke vært overbelastningsrelaterte feil i banken siden mai i år, og det nye prognosesystemet spilte en viktig rolle i dette. Ja, det viste seg å ikke være nok, og nå vil banken forstå hvor farlige toppene er for den. Vi trenger spådommer ved hjelp av beregninger fra belastningstesting, og for omtrent 30 % av kritiske systemer fungerer dette allerede, resten er i ferd med å innhente spådommer. På neste trinn skal vi forutsi belastningen på systemer, ikke i forretningstransaksjoner, men når det gjelder IT-infrastruktur, det vil si at vi vil gå ned ett lag. I tillegg må vi fullautomatisere innsamlingen av beregninger og konstruksjonen av prognoser basert på dem, for ikke å håndtere nedlastinger. Det er ikke noe fancy med det – vi krysser bare overvåking og lasttesting i tråd med globale beste praksis.

Kilde: www.habr.com

Legg til en kommentar