Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Miks vajab selline ettevĂ”te nagu MegaFon Tarantooli arvelduse jaoks? Kaugelt vaadates tundub, et tavaliselt tuleb tarnija, toob suure kasti, ĂŒhendab pistiku vooluvĂ”rku — ja arveldamine ongi kohal! Kunagi oli see tĂ”si, kuid tĂ€na on see arhaika ning sellised dinosaurused on juba vĂ€lja surnud vĂ”i suremas. Alguses oli arveldamine sĂŒsteem, mis esitas arveid — arve loendur vĂ”i kalkulaator. Kaasaegses telekommunikatsioonis on see kogu juurdepÀÀsu elutsĂŒkli automatiseerimise sĂŒsteem, alates lepingute sĂ”lmimisest kuni lĂ”petamiseni, sealhulgas reaalajas arveldamine, maksete vastuvĂ”tt ja veel palju muud. Arveldamine telekomifirmades on sarnane sĂ”jamasinale — suurele, vĂ”imsale ja relvadega kaetud.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Kuidas seondub siia Tarantool? Sellele vastavad Oleg Ivlev ja Andrei Knyazev. Oleg on ettevĂ”tte peaarhitekt MegaFon suurte rahvusvaheliste kogemustega, Andrei on Ă€risĂŒsteemide direktor. Nende ettekande salvestus Tarantool Conference 2018 Te saate teada, miks on R&D ettevĂ”tetes vajalik, mis on Tarantool, kuidas vertikaalse skaleerimise ummik ja globaliseerumine said selle andmebaasi ilmumise eeltingimusteks ettevĂ”ttes, tehnilised vĂ€ljakutsed, arhitektuuri transformatsioon ning millega MegaFoni tehnoloogia virn sarnaneb Netflixile, Google'ile ja Amazonile.

Vaata videot

Ühtne arveldussĂŒsteem

Projekt, millest juttu tuleb, nimetatakse Â«Ăœhtne arveldussĂŒsteem». Just selles on Tarantool nĂ€idanud oma parimaid omadusi.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

High-End seadmete jĂ”udlus ei pidanud ajalise kasvuga sammu abonenndite arvu ja teenuste arvu suurendamisega. Oodati, et abonenndite ja teenuste arv kasvab tĂ€nu M2M-le, IoT-le, ja kohalikud eripĂ€rad halvendasid time-to-market'i. EttevĂ”te otsustas luua ainulaadse moodulaarse arhitektuuriga maailmatasemel Ă€ri sĂŒsteemi kaheksa erineva arveldussĂŒsteemi asemel.

MegaFon on kaheksa ettevĂ”tet ĂŒhes. 2009. aastal toimus ĂŒmberkorraldus: kĂ”ik Venemaa filiaalid ĂŒhinesid ĂŒhtseks ettevĂ”tteks OAO „MegaFon” (praegu PAO). Nii tekkis ettevĂ”ttes 8 arvelduse sĂŒsteemi, mis sisaldasid omaenda „kohandatud” lahendusi, filiaalide eripĂ€ra ja erinevat organisatsioonilist struktuuri, IT ja turundust.

KĂ”ik sujus hĂ€sti, kuni tuli kĂ€ivitada ĂŒks ĂŒhtne föderaalne toode. Siit tekkis hulk keerukusi: kellelgi oli arvestus ĂŒlespoole ĂŒmardamisega, kellelgi allapoole, aga kellelgi - aritmeetilise keskmise jĂ€rgi. Selliseid olukordi on tuhandeid.

Hoolimata sellest, et arvelduse sĂŒsteemi versioon on ĂŒks, ĂŒks tarnija, seadistused erinevad nii palju, et nende kokkuliimimine vĂ”tab kaua aega. Proovisime nende arvu vĂ€hendada ja sattusime teise probleemiga, mis on tuttav paljudele korporatsioonidele.

Vertikaalne skaleerimine. Isegi parim sel ajal olnud riistvara ei rahuldanud vajadusi. Töös kasutati Hewlett-Packardi seadmeid, Superdome Hi-End seeriat, kuid nende vÔimsus ei katnud isegi kahte filiaali. Soovisime horisontaalset skaleerimist ilma suurte opereerimiskulude ja kapitaliinvesteeringuteta.

Ooten kasvavast tellijate ja teenuste arvust. Konsultandid on juba ammu toonud telekommunikatsiooni maailma jutud IoT-st ja M2M-st: tulevad ajad, mil igas telefonis ja triikis on sim-kaart, ning kĂŒlmkapis kaks. TĂ€na on meil kindel arv tellijaid, aga lĂ€hitulevikus on neid kordades rohkem.

Tehnoloogilised vÀljakutsed

Need neli pĂ”hjust sundisid meid tĂ”eliselt muutuma. Oli valik sĂŒsteemi tĂ€iendamise ja nullist projekteerimise vahel. MĂ”tlesime kaua, tegime tĂ”siseid otsuseid, mĂ€ngisime hangetes. LĂ”puks otsustasime projekteerida algusest peale ja pĂŒĂŒdlesime huvitavate vĂ€ljakutsete poole — tehnoloogilistele vĂ€ljakutsetele.

Skaleeritavus

Kui varem oli, ĂŒtleme niimoodi, 8 arveldust 15 miljonile tellijale, siis praegu pidi saama 100 miljonit tellijat ja rohkem — koormus on kordades suurem.

Oleme muutunud vÔrreldavaks suurte internetimÀngijatega, nagu Mail.ru vÔi Netflix.

Aga edasine liikumine koormuse ja tellijate arvu suurendamiseks tĂ”i meile tĂ”sised ĂŒlesanded.

Meie hiiglaslik riigi geograafia

Kaliningradi ja Vladivostoki vahel 7500 km ja 10 ajavööndit. Valguse kiirus on lĂ”plik ja neil kaugustel on viivitused juba mĂ€rkimisvÀÀrsed. 150 ms kĂ”ige tipptasemel modernsetes optilistes kanalites - see on palju real-time-tasumiseks, eriti selliseks nagu praegu telekomis Venemaal. Lisaks on vaja vĂ€rskendada ĂŒhe tööpĂ€eva jooksul, ja erinevate ajavöönditega - see on probleem.

Me ei teeni lihtsalt teenust maksu kaudu; meil on keerulised tariifid, paketid ja erinevad modifikaatorid. Meie peame mitte ainult lubama vÔi keelama abonendil rÀÀkida, vaid andma talle teatud kvoodi - arvestama kÔnesid ja toiminguid reaalajas nii, et ta ei mÀrkaks.

Katastroofitaluvus

See on keskse sĂŒsteemi teine kĂŒlg.

Kui me kogume kĂ”ik abonendid ĂŒhte sĂŒsteemi, on kĂ”ik Ă”nnetused ja katastroofid Ă€ritegevuse jaoks katastroofilised. SeetĂ”ttu projekteerime sĂŒsteemi nii, et vĂ€listada avariide mĂ”ju kogu abonendibaasile.

See, see on jĂ€lle tagasilĂŒkkamine vertikaalsest skaleerimisest. Kui me lĂ€ksime horisontaalsesse skaleerimisse, suurendasime serverite arvu sadadest tuhandeteni. Nendega tuleb hallata ja luua vahetatavust, automaatselt varundada IT-infrastruktuuri ja taastada jaotatud sĂŒsteemi.

Ees seisis meil huvitav vĂ€ljakutse. Me kavandasime sĂŒsteemi ja sel hetkel ĂŒritasime leida globaalseid tipptavasid, et kontrollida, kui palju oleme trendis, kui palju jĂ€rgime uusimaid tehnoloogiaid.

Üks globaalne praktika

Imelik, kuid globaalsetes telekommunikatsioonides ei leidnud me ĂŒhtegi viidatud nĂ€idet.

Euroopa kukkus vÀlja abonentide arvu ja ulatuse tÔttu, USA oma pakettide taseme tÔttu. Vaatasime midagi Hiinas, kuid leidsime ka Indiast ja palkasime spetsialiste Vodafone Indiast.

Arhitektuuri analĂŒĂŒsimiseks kogusime unistuste tiimi, mille eesotsas oli IBM — arhitektid erinevatest valdkondadest. Need inimesed suudavad adekvaatselt hinnata, mida me teeme, ja tuua meie arhitektuurisse kindlaid teadmisi.

Ulatus

MÔned numbrid illustreerimiseks.

Kavandame sĂŒsteemi 80 miljonile abonendile, varuga miljardile.. Nii eemaldame tulevased kĂŒnnist. See ei ole sellepĂ€rast, et me plaanime Hiinat vallutada, vaid IoT ja M2M surve tĂ”ttu.

300 miljonit dokumenti töödeldakse reaalajas. Kuigi meil on 80 miljonit abonenti, tegeleme ka potentsiaalsete klientidega ja nendega, kes on meie juurest lahkunud, kui tuleb sissenÔudmisega tegeleda. SeetÔttu on tegelikud mahud mÀrkimisvÀÀrselt suuremad.

2 miljardit tehingut muudavad taset iga pĂ€ev — need on maksed, arvestused, kĂ”ned ja muud sĂŒndmused. 200 TB andmeid muutuvad aktiivselt, veidi aeglasemalt muutuvad 8 PB andmeid, ja see ei ole arhiiv, vaid elavad andmed ĂŒhes arveldamises. Skaala andmekeskustele — 5000 serverit 14 paiknemises.

Tehnoloogiline alus

Kui planeerisime arhitektuuri ja hakkasime sĂŒsteemi ehitama, importisime endale kĂ”ige huvitavamad ja tipptasemel tehnoloogiad. Tuli vĂ€lja tehnoloogiline alus, mille tunnevad Ă€ra kĂ”ik internetimĂ€ngijad ja korporatsioonid, kes loovad kĂ”rge koormuse sĂŒsteeme.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Alus on sarnane teiste suurte mĂ€ngijate, nagu Netflix, Twitter, Viber, omadele. See koosneb 6 komponendist, kuid me tahame seda lĂŒhendada ja ĂŒhtlustada.

Paindlikkus on hea, kuid suurtes korporatsioonides ei saa ilma ĂŒhtlustamiseta hakkama.

Me ei kavatse sama Oracle'i asendada Tarantooliga. Suurte ettevĂ”tete reaalsuses on see utoopia vĂ”i ristisĂ”da, mis kestab 5-10 aastat ja mille tulemus pole teada. Kuid Cassandra ja Couchbase'i saab Tarantooliga tĂ€iesti asendada, ja me pĂŒrgime selle poole.

Miks Tarantool?

On neli lihtsat kriteeriumi, miks me valisime just selle andmebaasi.

Kiirus. Me tegime koormustestid Megafoni tööstussĂŒsteemidel. Tarantool vĂ”itis - see nĂ€itas parimat jĂ”udlust.

Ei saa öelda, et teised sĂŒsteemid ei rahuldaks Megafoni vajadusi. Praegused mĂ€lulahendused on nii vĂ”imsad, et ettevĂ”tte varu on enam kui piisav. Kuid meile on huvitav tegeleda liidriga, mitte nende tagaolijatega, sealhulgas koormustestide osas.

Tarantool katab ettevÔtte vajadused isegi pikaajalises perspektiivis.

TCO hind. Couchbase'i tugi Megafoni mahtudel maksab kosmilisi summasid, Tarantooliga on olukord aga palju meeldivam ja funktsionaalsuses on nad sarnased.

Veel meeldivam omadus, mis mÔjutas meie valikut, on see, et Tarantool töötab mÀluhalduse osas paremini kui teised andmebaasid. Ta nÀitab maksimaalset efektiivsust.

UsaldusvÀÀrsus. MegaFon investeerib usaldusvÀÀrsusesse tÔenÀoliselt rohkem kui keegi teine. SeetÔttu, kui vaatasime Tarantooli, mÔistsime, et peame tagama, et see vastaks meie nÔudmistele.

Oleme investeerinud oma aega ja ressursse ning koos Mail.ru'ga lĂ”ime ettevĂ”tte versiooni, mis on nĂŒĂŒdseks juba mĂ”nedes teistes ettevĂ”tetes kasutusel.

Tarantool-enterprise rahuldas meid tÀielikult oma turvalisuse, usaldusvÀÀrsuse ja logimise poolest.

Partnerlus

Minu jaoks on kÔige olulisem otsene kontakt arendajaga. Just see on see, millega Tarantooli tiim mind vÔitis.

Kui sa lĂ€hed mĂ€ngijaga, eriti sellisega, kes töötab suure kliendiga, ja ĂŒtled, et sul on vaja, et andmebaas suudaks seda, seda ja seda, vastab ta tavaliselt:

— HĂ€sti, pange nĂ”uded sinna madalaima hunniku alla – kunagi, ilmselt, jĂ”uame nende juurde.

Paljuski on teinud lĂ€hituleviku plaanid 2-3 aastaks, kuhu on peaaegu vĂ”imatu sisse saada, kuid Tarantooli arendajad kompenseerivad oma avatuses, mitte vaid MegaFoni tootega, ja kohandavad oma sĂŒsteemi kliendi vajadustele. See on Ă€ge ja meile tĂ”esti meeldib.

Kus me rakendasime Tarantoolit

Meie Tarantool on kasutusel mitmes elemendis. Esimene on meie piloot, mille lĂ”ime aadressikataloogisĂŒsteemile. Omast ajast tahtsime, et see oleks sarnane Yandex.Mapsile ja Google Mapsile, kuid vĂ€lja tuli veidi teisiti.

NĂ€iteks aadressikataloog mĂŒĂŒgiliideses. Oracle'is vĂ”tab Ă”ige aadressi otsimine aega 12-13 s — ebamugavad numbrid. Kui me lĂŒlitame Tarantoolile, vahetame Oracle'i vĂ€lja teise andmebaasi vastu konsoolis ja teeme sama otsingu, saame 200-kordse kiiruskasvu! Linn hĂŒppab peale kolmandat tĂ€hte. Praegu kohandame liidese, et see toimuks peale esimest. Sellegipoolest on reageerimiskiirus tĂ€iesti erinev — juba millisekundid sekundite asemel.

Teine rakendus on moes teema, mida nimetatakse kahekordseks IT-ks. KĂ”ik selle tĂ”ttu, et igaĂŒhe konsultandid ĂŒtlevad, et organisatsioonidel on sinna suunduda.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Siin on infrastruktuuri kiht, mille kohal on domeenid, nĂ€iteks arveldamise sĂŒsteem, nagu telekommunikatsioonis, ettevĂ”tte sĂŒsteemid ja korporatiivne aruandlus. See on lĂ”pp, mida ei tohi puudutada. Loomulikult on vĂ”imalik, kuid kvaliteedi tagamine peab olema ÀÀrmiselt tĂ€helepanelik, sest see genereerib ettevĂ”ttele tulu.

Edasi liigub mikroteenuste kiht – see, mis eristab operaatorit vĂ”i teisi mĂ€ngijaid. Mikroteenuseid saab kiiresti luua erinevate vahemĂ€lu pĂ”hjal, tĂ”stes sinna andmeid erinevatelt domeenidelt. Siin on eksperimentide ala — kui midagi ei lĂ€inud korda, sulgesin ĂŒhe mikroteenuse ja avasin teise. See tagab tĂ”eliselt lĂŒhema time-to-market’i ja suurendab ettevĂ”tte usaldusvÀÀrsust ja kiirus.

Mikroteenused on tĂ”enĂ€oliselt Tarantooli peamine roll MegaFon’is.

Kus kavatseme Tarantooli rakendada

Kui vĂ”rrelda meie edukat arveldamise projekti Deutsche Telekomi, Svjaztcomi ja Vodafone India transformatsiooniprogrammidega, on see ĂŒllatavalt dĂŒnaamiline ja loominguline. Selle projekti elluviimise kĂ€igus ei ole mitte ainult MegaFoni ja selle struktuuri ĂŒmberkujundamine toimunud, vaid on ilmnenud ka Tarantool-enterprise Mail.ru-s ning meie tarnija Nexign (endise nimega «Peter-Service») juures — BSS Box (karbitĂŒĂŒpi arvelduse lahendus).

See on mingil moel ajalooline projekt Venemaa turul. Seda vĂ”ib vĂ”rrelda Frederick Brooksi raamatus «MĂŒĂŒdiline kuud» kirjeldatud sĂŒndmustega. 60. aastatel kaasas IBM uue OS/360 operatsioonisĂŒsteemi vĂ€ljatöötamiseks oma peamistele arvutitele 5 000 inimest. Meil on vĂ€hem — 1 800, kuid meie töötavad nagu sidrunipeenral, ja avatud lĂ€htekoodi ja uute lĂ€henemiste kasutamisega töötame tootlikumalt.

Allpool on toodud arvelduse domeenid vĂ”i, kui rÀÀkida laiemalt, Ă€risĂŒsteemid. Enterprise'i inimesed tunnevad hĂ€sti CRM-i. Teised sĂŒsteemid peaksid olema kĂ”igil: Open API, API Gateway.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Open API

Vaadakem jĂ€lle numbreid ja seda, kuidas Open API nĂŒĂŒd töötab. Selle koormus on — 10 000 tehingut sekundis. Kuna me plaanime aktiivselt arendada mikroteenuste kihti ja luua MTS avalikku API-d, ootame tulevikus sellel alal suuremat kasvu. 100 000 tehingut kindlasti tuleb..

Ei tea, kas suudame Mail.ru-ga SSO-s vĂ”rrelda — neil on ju 1 000 000 tehingut sekundis. Nende lahendused on meile ÀÀrmiselt huvitavad ja plaanime nende kogemust ĂŒle vĂ”tta — nĂ€iteks luua funktsionaalne SSO reserv Tarantooli abil. Praegu tegelevad Mail.ru arendajad sellega meie juures.

CRM

CRM on need 80 miljonit tellijat, kelle arvu tahame tÔsta miljardini, sest meil on juba 300 miljonit dokumenti, mis hÔlmavad kolmeaastast ajalugu. Ootame tÔeliselt uusi teenuseid ja siin kasvupunkt on lisateenuste aktiveerimine.See on sfÀÀr, mis hakkab kasvama, sest teenuseid tuleb jÀrjest rohkem. Vastavalt on vajalik ajalugu, me ei soovi sellel takerduda.

Kogu arveldus teenuste osas, mis puudutab arve esitamist ja klientide debitoorseid nÔudeid on hakanud arenema eraldi domeeniks.Selleks et suurendada tootlikkust, rakendatakse domeeniarhitektuuri arhitektuurimudelit..

SĂŒsteem on jagatud domeenideks, koormus on jaotatud ja tagatud on talitlushĂ€irete vĂ€ltimine. Lisaks on tehtud tööd hajutatud arhitektuuriga.

KĂ”ik muu on ettevĂ”tte tasandi lahendused. KĂ”nede hoidlas — 2 miljardit pĂ€evas, 60 miljardit kuus. MĂ”nikord tuleb neid kuus uuesti arvestada, ja parem on kiiresti. Finantsmonitooring on just need 300 miljonit, mis pidevalt kasvavad: abonendid jooksevad sageli operaatorite vahel, suurendades seda osa.

KĂ”ige telekommunikatsioonialasem komponent mobiiliteenustes on reaalajas tariifimine. Need on sĂŒsteemid, mis vĂ”imaldavad teil helistada vĂ”i mitte helistada, tehes otsuse reaalajas. Siin on koormus 30 000 tehingut sekundis, kuid andmeedastuse kasvu arvestades plaanime 250 000 tehingut, seetĂ”ttu oleme tugevalt huvitatud Tarantoolist.

Eelmine pilt on need domeenid, kus plaanime Tarantoolit rakendada. CRM on muidugi laiem ja plaanime seda rakendada sĂŒgavamal tasemel.

Minu jaoks, kui arhitekt, on meie tehniliste nĂ€itajate arv 100 miljonit abonenti murettekitav — mis siis, kui 101 miljonit? Kas peame uuesti kĂ”ik ĂŒle tegema? Selle vĂ€ltimiseks kasutame vahemĂ€lusĂŒsteeme, mis tĂ”stab ka kĂ€ttesaadavust.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

KokkuvĂ”ttes on Tarantooli rakendamiseks kaks lĂ€henemist. Esimene — ehitada kĂ”ik vahemĂ€lud mikroteenuste tasemel. Kui ma Ă”igesti aru saan, siis seda teed lĂ€heb VimpelCom, luues klientide vahemĂ€lu.

Meie oleme enam sĂ”ltumatud teenusepakkujatest, muutes BSS-i tuuma, seega on meil juba kastist vĂ€lja tulnud ĂŒhtne klientide registri sĂŒsteem. Kuid me tahame seda laiendada. SeetĂ”ttu rakendame natuke teistsugust lĂ€henemist — teeme vahemĂ€lud sĂŒsteemide sisse.

Nii on vĂ€hem desĂŒnkroniseerimist — ĂŒks sĂŒsteem vastutab nii vahemĂ€lu kui ka pĂ”himeistri allika eest.

Meetod sobib hĂ€sti Tarantooli lĂ€henemesse koos tehingute raamistiku ja osaliste uuendustega, see tĂ€hendab andmete muutmisega. KĂ”ik muu saab salvestada kuskile mujale. Ei ole suurt andmejĂ€rve, haldamata globaalseid vahemĂ€leid. VahemĂ€lud projekteeritakse sĂŒsteemi, toote vĂ”i kliendi jaoks vĂ”i selleks, et teenindamist lihtsustada. Kui helistab kvaliteedi ĂŒle Ă€rritunud klient, siis tahaks teda kvalitatiivselt teenindada.

RTO ja RPO

IT-s on kaks mĂ”istet — RTO ja RPO.

Recovery time objective — see on teenuse taastamise aeg pĂ€rast tĂ”rget. RTO = 0 tĂ€hendab, et isegi kui midagi kukub, teenus jĂ€tkab tööd.

Recovery point objective — see on andmete taastamise aeg, kui palju andmeid me saame kaotada teatud aja jooksul. RPO = 0 tĂ€hendab, et me ei kaota andmeid.

Tarantooli ĂŒlesanne

Proovime lahendada Tarantooli ĂŒlesanne.

Antud: kĂ”igile arusaadav taotluste korv, nĂ€iteks Amazonis vĂ”i kuskil mujal. NĂ”utav et korv töötaks 24 tundi ööpĂ€evas, 7 pĂ€eva nĂ€dalas, vĂ”i 99,99% ajast. Tellimused, mis meieni jĂ”uavad, peavad sĂ€ilitama jĂ€rjekorra, kuna me ei saa tellijale ĂŒhendust kaootiliselt sisse ja vĂ€lja lĂŒlitada — kĂ”ik peab olema rangelt jĂ€rjepidev. Eelmine tellimus mĂ”jutab jĂ€rgmist, seetĂ”ttu on andmed olulised — miski ei tohi kaduma minna.

Lahendus. Saaksin proovida lahendada otse ja kĂŒsida andmebaasi arendajatelt, kuid probleem ei lahene matemaatiliselt. Saame meenutada teoreeme, sĂ€ilimise seadusi, kvantfĂŒĂŒsikat, kuid milleks — seda ei saa lahendada andmebaasi tasemel.

Siin töötab vana hea arhitektuuri lĂ€henemine — peab hĂ€sti teadma teemat ja selle tĂ”ttu lahendama selle mĂ”istatuse.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Meie lahendus: loome hajutatud taotlusregister Tarantoolis — geograafiliselt hajutatud klaster. Skeemil on see kolm erinevat andmekeskust — kaks Uuralite enne, ĂŒks Uuralite taga, ja me jagame kĂ”ik taotlused nende keskuste vahel.

Netflix, mis peetakse praegu ĂŒheks IT-juhtidest, oli kuni 2012. aastani vaid ĂŒks andmekeskus. Katoliku jĂ”ulude eel, 24. detsembril, see andmekeskus kadus. Kanada ja Ameerika Ühendriikide kasutajad jĂ€id ilma oma lemmikfilmidest, olid vĂ€ga pettunud ja tĂ”id sellest sotsiaalmeedias juttu. NĂŒĂŒd on Netflixil kolm andmekeskust lÀÀne-ida rannikul ja ĂŒks lÀÀnes Euroopas.

Me ehitame algusest peale geograafiliselt jaotatud lahenduse — meile on oluline rikke taluvus.

Nii et meil on klaster, aga kuidas olla RPO = 0 ja RTO = 0? Lahendus on lihtne ja sÔltub teemast.

Mis on taotlustes oluline? Kaks osa: ostukorvi tĂ€itmine ENNE ostuotsuse tegemist, ja PE after. ENNE osa telecomis kutsutakse tavaliselt order capturing vĂ”i order negotiation. Telekommunikatsioonis vĂ”ib see olla oluliselt keerulisem kui veebipoodides, sest seal tuleb klienti teenindada, pakkuda 5 varianti, ja see kĂ”ik kestab teatud aja, kuid ostukorv tĂ€itub. Sel hetkel on tĂ”rge vĂ”imalik, kuid see ei ole hirmutav, sest see toimub interaktiivses reĆŸiimis inimese jĂ€relevalve all.

Kui Moskva andmekeskus peaks Ă€kki vĂ€lja kukkuma, siis lĂŒlitumine automaatselt teise andmekeskusse vĂ”imaldab meil jĂ€tkata tööd. Teoreetiliselt vĂ”ib ĂŒks toode ostukorvis kaduma minna, kuid te mĂ€rkate seda, tĂ€iendate ostukorvi uuesti ja jĂ€tkate töötamist. Sellisel juhul on RTO = 0.

Samas on teine variant: kui me vajutame „esita“, tahame, et andmed ei kaduks. Sellest hetkest alates kĂ€ivitub automaatika — see on juba RPO = 0. Neid kahte erinevat mustrit vĂ”ib ĂŒhe juhtumi puhul kasutada geograafiliselt jaotatud klastrina ĂŒhe lĂŒlitatava masteriga, teise puhul aga mĂ”ne kvoorumi kirjutamise abil. Mustrid vĂ”ivad varieeruda, kuid meie lahendame probleemi.

Edasi liikudes, omades jaotatud taotluste registrit, saame seda kĂ”ike veelgi skaleerida — omada palju dispetĆĄereid ja tĂ€itjaid, kes pöörduvad selle registraatide poole.

Uue pĂ”lvkonna arvepidamisarchitektuur: ĂŒmberkujundamine Tarantooli kasutuselevĂ”tuga

Cassandra ja Tarantool koos

On veel ĂŒks juhtum — „balansihaldus“. Siin on huvitav juhtum Cassandra ja Tarantooli ĂŒhiseks kasutamiseks.

Kasutame Cassandrat, sest 2 miljardit kÔnet pÀevas ei ole piir ja neid tuleb rohkem. Turundajad armastavad liiklust allikate kaupa vÀrvida, ning sotsiaalmeedia andmed muutuvad jÀrjest detailsemaks. See kÔik suurendab looga seotud konteksti.

Cassandra vÔimaldab horisontaalset skaleerimist igasuguste mahtude jaoks.

Me tunneme end Cassandraga mugavalt, kuid tal on ĂŒks probleem – lugemine pole tema tugevus. Kirjapanek on korras, 30 000 sekundis pole probleem – probleem on lugemises..

SeetĂ”ttu tuli kĂ”ne alla vahemĂ€lu teema ning samal ajal lahendasime jĂ€rgmise probleemi: olemas on vana traditsiooniline juhtum, kus kommutatori varustuse andmed veebiarvestusest jĂ”uavad failidena, mille me laadime Cassandrasse. Oleme vĂ”idelnud nende failide usaldusvÀÀrse laadimise probleemiga, rakendanud isegi IBM-i soovitusel failide ĂŒlekande haldamise lahendusi – on selliseid sĂŒsteeme, mis haldavad failide edastust efektiivselt, kasutades nĂ€iteks UDP-protokolli, mitte TCP-d. See on hea, kuid ikkagi kulub minuteid, ja seni, kuni me seda kĂ”ike ei laadi, ei saa operaator kĂ”nekeskuses kliendile vastata, mis juhtus tema saldo – tuleb ootama jÀÀda.

Selle vĂ€ltimiseks me rakendame paralleelset funktsionaalset reservi. Kui me saadame sĂŒndmuse Kafka kaudu Tarantooli, arvutades reaalaegseid aggregaate, nĂ€iteks tĂ€nase pĂ€eva kohta, saame saldo vahekogud, mis suudab edastada saldosid mistahes kiirusel, nĂ€iteks 100 tuhat tehingut sekundis ja tĂ€pselt need 2 sekundit.

EesmÀrk on see, et pÀrast kÔne tegemist oleks isiklikus kabinetis 2 sekundi pÀrast mitte ainult muudetud saldo, vaid ka teave selle kohta, miks see muutus.

KokkuvÔte

Need olid Tarantooli kasutamise nÀited. Meile meeldib vÀga Mail.ru avatus ja nende valmidus kaaluda erinevaid juhtumeid.

BCG vĂ”i McKinsey, Accenture vĂ”i IBM konsultandid on meid juba keeruline millegagi ĂŒllatada — palju sellest, mida nad pakuvad, me kas teeme juba, oleme teinud vĂ”i plaanime teha. Arvan, et Tarantool leiab meie tehnoloogia virnas vÀÀrilise koha ja asendab mitmeid juba olemasolevaid tehnoloogiaid. Oleme selle projekti arenduses aktiivses faasis.

Olegi ja Andrei ettekande Tarantooli konverentsil eelmisel aastal oli ĂŒks parimaid, ja juba 17. juunil esindab Oleg Ivlev T+ Konverents 2019 ettekandega „Miks on Tarantool Enterprise’is vajalik“. Lisaks MegaFonilt esineb Alexander Deulin ettekandega "Tarantooli vahemĂ€lud ja replikaat Oracle'ist". Uurime, mis on muutunud, milliseid plaane on Ă”nnestunud ellu viia. Liituge - konverents on tasuta, tuleb vaid registreerimine. KĂ”ik ettekanded on aktsepteeritud ja konverentsi programmid on koostatud: uued juhtumiuuringud, uus kogemus Tarantooli kasutamisel, arhitektuur, ettevĂ”tte tasand, Ă”petused ja mikroteenused.

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster