Jälgimine + koormustestimine = ennustus ja tõrgeteta

VTB IT-osakonnal tuli mitu korda tegeleda süsteemide töös tekkinud eriolukordadega, mil nende koormus kasvas kordades. Seetõttu tekkis vajadus välja töötada ja katsetada mudel, mis ennustaks kriitiliste süsteemide tippkoormust. Selleks panid panga IT-spetsialistid paika monitooringu, analüüsisid andmeid ja õppisid prognoose automatiseerima. Räägime teile lühikeses artiklis, millised tööriistad aitasid koormust ennustada ja kas need aitasid tööd optimeerida.

Jälgimine + koormustestimine = ennustus ja tõrgeteta

Probleemid suure koormusega teenustega tekivad peaaegu kõigis tööstusharudes, kuid finantssektori jaoks on need kriitilised. Kell X peavad kõik lahinguüksused valmis olema ja seetõttu oli vaja ette teada, mis võib juhtuda ja isegi määrata päev, millal koorem hüppab ja millised süsteemid sellega kokku puutuvad. Tõrgetega tuleb tegeleda ja neid ennetada, mistõttu ennustava analüütikasüsteemi rakendamise vajadusest isegi ei räägitud. Vaja oli seireandmete põhjal süsteeme kaasajastada.

Analüütika põlvili

Palgaarvestusprojekt on ebaõnnestumise korral üks tundlikumaid. See on prognoosimiseks kõige arusaadavam, nii et otsustasime sellega alustada. Suure ühenduvuse tõttu võib tippkoormuse ajal probleeme esineda teistes alamsüsteemides, sealhulgas kaugpangateenustes (RBS). Näiteks hakkasid seda aktiivselt kasutama kliendid, kes rõõmustasid raha laekumise SMS-i üle. Koormus võib hüpata rohkem kui suurusjärgu võrra. 

Esimene prognoosimudel loodi käsitsi. Võtsime eelmise aasta üleslaadimised ja arvutasime, millistel päevadel on oodata maksimaalseid tippe: näiteks 1., 15. ja 25. kuupäeval, samuti kuu viimastel päevadel. See mudel nõudis märkimisväärseid tööjõukulusid ega andnud täpset prognoosi. Sellegipoolest tuvastas see kitsaskohad, kus oli vaja riistvara lisada, ning võimaldas ankurklientidega kokku leppides raha ülekandmise protsessi optimeerida: et mitte ühe ampsuga palka anda, jaotati tehingud erinevatest piirkondadest aja peale. Nüüd töötleme neid osadena, mida panga IT-infrastruktuur saab tõrgeteta "närida".

Saanud esimese positiivse tulemuse, liikusime edasi prognoosimise automatiseerimisele, oma korda ootas kümmekond kriitilisemat valdkonda.

Põhjalik lähenemine

VTB on juurutanud MicroFocuse seiresüsteemi. Sealt võtsime kasutusele andmete kogumise prognoosimiseks, salvestussüsteemi ja aruandlussüsteemi. Tegelikult oli monitooring juba paigas, ei jäänud muud üle, kui lisada mõõdikud, ennustusmoodul ja luua uued aruanded. Seda otsust toetab välistöövõtja Technoserv, seega langes põhitöö projekti elluviimisel tema spetsialistidele, kuid mudeli ehitasime ise. Prognoosimissüsteem tehti Facebooki poolt välja töötatud avatud lähtekoodiga toote Prophet põhjal. Seda on lihtne kasutada ja hõlpsasti integreeritav meie installitud integreeritud jälgimistööriistade ja Verticaga. Jämedalt öeldes analüüsib süsteem koormusgraafikut ja ekstrapoleerib selle Fourier' seeria põhjal. Samuti on võimalik lisada teatud koefitsiente päevade kaupa, mis on võetud meie mudelist. Mõõdikud võetakse ilma inimese sekkumiseta, kord nädalas arvutatakse prognoos automaatselt ümber ja adressaatidele saadetakse uued aruanded. 

See lähenemisviis tuvastab peamised tsüklilisused, näiteks iga-aastane, kuu, kvartali ja nädala. Palkade ja ettemaksete maksmine, puhkuseperioodid, puhkused ja müügid – kõik see mõjutab süsteemidesse tehtavate kõnede arvu. Selgus näiteks, et osad tsüklid kattuvad ja põhikoormus (75%) süsteemidele tuleb Keskföderaalringkonnast. Juriidilised ja üksikisikud käituvad erinevalt. Kui “füüsikute” koormus jaguneb nädalapäevade peale suhteliselt ühtlaselt (see on palju pisitehingut), siis ettevõtetel kulub 99,9% tööajale ning tehingud võivad olla lühikesed või töödeldavad mitme aja jooksul. minutid või isegi tunnid.

Jälgimine + koormustestimine = ennustus ja tõrgeteta

Saadud andmete põhjal määratakse pikaajalised suundumused. Uus süsteem on paljastanud, et inimesed liiguvad massiliselt kaugpangateenustele. Seda teavad kõik, kuid me ei oodanud sellist mastaapi ega uskunud sellesse alguses: pangakontoritesse tehtavate kõnede arv väheneb ülikiiresti ja kaugtehingute arv kasvab täpselt sama palju. Vastavalt sellele kasvab ja kasvab ka süsteemide koormus. Nüüd prognoosime koormust 2020. aasta veebruarini. Tavalisi päevi saab ennustada 3% veaga ja tipppäevi 10% veaga. See on hea tulemus.

Lõksud

Nagu tavaliselt, ei olnud see raskusteta. Fourier-seeriat kasutav ekstrapoleerimismehhanism ei ületa nulli hästi – me teame, et juriidilised isikud genereerivad nädalavahetustel vähe tehinguid, kuid ennustusmoodul toodab väärtusi, mis on nullist kaugel. Neid oli võimalik sunniviisiliselt parandada, kuid kargud pole meie meetod. Lisaks pidime lahendama lähtesüsteemidest andmete valutu toomise probleemi. Regulaarne teabe kogumine nõuab tõsiseid arvutusressursse, seetõttu ehitasime replikatsiooni abil kiired vahemälud ja saame koopiatest äriandmeid. Sellistel juhtudel on peasüsteemide lisakoormuse puudumine blokeerimisnõue.

Uued väljakutsed

Otseülesanne tippude ennustamisel sai lahendatud: ülekoormusest tulenevaid tõrkeid ei ole pangas selle aasta maikuust saati olnud ning uuel prognoosisüsteemil oli selles oluline roll. Jah, selgus, et sellest ei piisa ja nüüd tahab pank aru saada, kui ohtlikud on tema jaoks tipud. Vajame ennustusi, kasutades koormustestimise mõõdikuid ja umbes 30% kriitiliste süsteemide puhul see juba töötab, ülejäänud on prognooside hankimise protsessis. Järgmises etapis hakkame ennustama süsteemide koormust mitte äritehingutes, vaid IT-taristu osas, st läheme ühe kihi alla. Lisaks peame täielikult automatiseerima mõõdikute kogumise ja nende põhjal prognooside koostamise, et mitte tegeleda allalaadimisega. Selles pole midagi väljamõeldud – me lihtsalt ristame jälgimise ja koormustestimise kooskõlas ülemaailmsete parimate tavadega.

Allikas: www.habr.com

Lisa kommentaar