IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi

Andmete lao ETL-komponent jÀÀb sageli pealĂ€bi lao enda varju ning sellele pööratakse vĂ€hem tĂ€helepanu kui peamisele andmebaasile vĂ”i esiosakomponendile, BI-le ja aruannete koostamisele. Sellest hoolimata mĂ€ngib ETL andmelao tĂ€itmise mehhanika seisukohalt ĂŒliolulist rolli ja vajab administraatorite tĂ€helepanu sama palju kui ĂŒlejÀÀnud komponendid. Minu nimi on Aleksander, hetkel haldan ma ETL-i Rostelecomis, ja selles artiklis pĂŒĂŒan natuke jagada, millega tuleb silmitsi seista tuntud ETL-sĂŒsteemi administraatoril suurte andmeladude juures Rostelecomis.

Kui austatud lugejad on juba meie andmeladude projektiga ja toote Informatica PowerCenteriga tutvunud, vÔivad nad otse jÀrgmise osa juurde liikuda.

MĂ”ni aasta tagasi kĂŒpses Rostelecomis ja hakkas ellu viima idee ĂŒhtsest ettevĂ”tte andmeladust. Rida ladusid, mis lahendasid eraldi ĂŒlesandeid, oli juba loodud, kuid skriptide arv kasvas, toetuskulud suurenesid ning sai selgeks, et tulevik kuulub tsentraliseerimisele. Arhitektuuriliselt koosneb see lao mitmest kihist, mille on ellu viidud Hadoopi ja GreenPlumi baasil, ning sisaldab abitegevuse andmebaase, ETL mehhanisme ja BI-d.

Samas, tĂ€nu suures koguses territoriaalselt jaotunud, heterogeensetest andmeallikatest, loodi spetsiaalne andmete vĂ€ljavĂ”tme mehhanism, mille tööd juhib Informatica. Tulemuseks on see, et andmepakid jĂ”uavad Hadoopi vaheala, mille jĂ€rel algavad andmete laadimise protsessid jaotuste kihtide vahel, Hadoopis ja GreenPlumis, ja nendega juhib nii nimetatud ETL juhtimismehhanism, mis on ellu viidud Informatica kaudu. Seega on sĂŒsteem Informatica ĂŒks peamisi komponente, mis tagab lao toimimise.

Meie ladude kohta rÀÀgitakse ĂŒksikasjalikumalt ĂŒhes jĂ€rgmistest postitustest.

Informatica PowerCenter / Big Data Management peetakse tĂ€napĂ€eval andmete integreerimise tööriistade seas juhtivaks tarkvaraks. See on Ameerika ettevĂ”tte Informatica toode, mis on ĂŒks tugevamaid mĂ€ngijaid ETL (Extract Transform Load), andmete kvaliteedi haldamise, MDM (Master Data Management), ILM (Information Lifecycle Management) ja muude valdkondade osas.

Meie kasutatav PowerCenter on integreeritud Tomcat rakendusserver, kus töötavad Informatica rakendused, mis pakuvad tema teenuseid:

Domeen, see on pÔhimÔtteliselt alus kÔikidele muudele teenustele, mille raames töötavad domeenis teenused, kasutajad, GRID komponendid.

Administrator Console, veebipÔhine haldus- ja jÀlgimistööriist, lisaks Informatica Developer'i kliendile pÔhivahend toote kasutamiseks

MRS, Mudeli Repositooriumi Teenus, metaandmete salvestamine, toimib kihina fĂŒĂŒsiliselt salvestatud metaandmete ja Informatica Developer'i kliendi vahel, kus arendamine toimub. Repositorid salvestavad nii andmete kirjeldusi kui ka muud teavet, sealhulgas mitmete teiste Informatica teenuste jaoks, nĂ€iteks tööde kĂ€ivitamise ajakavad (Schedules) vĂ”i jĂ€lgimisandmed, samuti rakenduste parameterset'id, mis vĂ”imaldavad kasutada ĂŒhte ja sama rakendust erinevate andmeallikate ja -sihtkohtadega töötamiseks.

DIS, Andmeintegreerimise Teenus, teenus, kus toimuvad peamised funktsionaalsed protsessid, kus töötavad rakendused ja toimub Workflows'i (mappingute ja nende koostöö jÀrjestuse kirjeldused) ja Mappings'i (transformatsioonide, plokkide, kus toimuvad andmete tÔstmised) kÀivitamine.

GRID konfiguratsioon – pĂ”himĂ”tteliselt on see mitme serveri kasutamise variant kompleksi ehitamisel, kus DIS'i koormus jaotatakse nodide (st domeeni kuuluvate serverite) vahel. Sel juhul, vĂ€lja arvatud koormuse jaotamine DIS'is tĂ€iendava GRID abstraktsioonikihi kaudu, mis ĂŒhendab mitut noodi ja kus DIS töötab, selle asemel et töötada konkreetse noodi peal, vĂ”ivad samuti luua tĂ€iendavad varukoopia MRS'exemplaarid. Saame isegi rakendada kĂ”rge kĂ€ttesaadavuse, kui vĂ€lised pĂ€ringud saavad toimuda varunoodide kaudu, kui peamine tĂ”rkub. Sellisest lahendusse minekust oleme hetkel loobunud.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Informatica PowerCenter, skeemiliselt

AndmevĂ”rgu tarneahela alguses esines regulaarseid probleeme, osa neist seoses Informatica tol hetkel ebastabiilse tööga. Jagame mĂ”ned meeldivad hetked sellest saagast – Informatica 10 omandamisest.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Endine Informatica logo

Meie valdkonna vastutusse kuuluvad ka teised Informatica keskkonnad, kus on oma spetsiifika erineva koormuse tĂ”ttu, aga ma tahan tĂ€nases arutelus meenutada eelkĂ”ige, kuidas Informatica on arenenud ETL-komponendina andmete ladustamise sĂŒsteemis.

Kuidas see juhtus

Aastal 2016, kui me hakkasime vastutama Informatica töö eest, oli see juba jĂ”udnud versioonini 10.0. Optimistlikult meelestatud kolleegide seas, kes otsustasid kasutada toote vĂ€iksema versiooni .0, tundus kĂ”ik olevat ilmne — uus versioon peab olema kasutusele vĂ”etud! Riistvara ressursid olid tol hetkel vĂ€ga head.

Kevadest 2016 oli Informatica töö eest vastutav alltöövĂ”tja, ja natuke arvukate sĂŒsteemi kasutajate sĂ”nul „töötas see paar korda nĂ€dalas“. Siinkohal on oluline mĂ€rkida, et ladustamine oli de facto PoC etapis, meeskonnas ei olnud administraatoreid ja sĂŒsteem langes pidevalt eri pĂ”hjustel, pĂ€rast mida alltöövĂ”tja insener taaskĂ€ivitas selle.

SĂŒgiseks liitus meeskonnas kolm administraatorit, kes jagasid omavahel vastutusalasid ning normaalne sĂŒsteemide kasutamise töö hakati ĂŒles ehitama projektis, sealhulgas Informatica osas. Eraldi tasub mainida, et see toode ei ole laialdaselt levinud ning suurte kogukondadega, kus vĂ”iks leida vastuseid igasugustele kĂŒsimustele ja lahendada erinevaid probleeme. SeetĂ”ttu osutus Vene partneri Informatica poolt antud tĂ€iendav tehniline tugi ÀÀrmiselt oluliseks, mis aitas lahendada kĂ”ik meie vead ning ka noore Informatica 10 vigu.

Esimene asi, mida pidime tegema meie arendajatele ja alltöövÔtjale, oli stabiliseerida Informatica töö ning tagada web-administratsiooni konsooli (Informatica Administrator) toimimine.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Nii kohtasime sageli arendajaid, kes töötasid Informatical.

JĂ€tmata kĂ”rvale protsess, millega selgitati vĂ€lja pĂ”hjused, oli peamine pĂ”hjus informaatika tarkvara ja andmebaasi vahelise suhtluse skeem, mis asus vĂ”rgu maastiku seisukohalt suhteliselt kaugel serveris. See pĂ”hjustas viivitusi ja rikkus Informatica domeeni seisundi kontrollimise mehhanisme. PĂ€rast andmebaasi teatud hÀÀlestamist, Informatica parameetrite muutmist, et muuta see andmebaasi viivituste suhtes tolerantsemaks, ning lĂ”puks Informatica versiooni vĂ€rskendamist kuni 10.1 ja andmebaasi ĂŒleviimist eelmise serveri lĂ€hedal asuvasse serverisse, kaotas probleem oma olulisuse ning me ei ole sellest ajast saadik selliseid langusi tĂ€heldanud.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Üks katse saavutada Informatica Monitori töö

Adminsitratsioonikonsoliga oli olukord samuti kriitiline. Kuna aktiivne arendus toimus tingimuslikult tootmiskeskkonnas, oli kolleegidel pidevalt vajalik analĂŒĂŒsida mappings'e ja workflow'd „liikumise” ajal. Uues Informatica Data Integration Service'is ei ole selliseks jĂ€lgimiseks eraldi tööriista, kuid veebihalduskonsoolis on ilmunud jĂ€lgimise sektsioon (Informatica Administrator Monitor), kus saab jĂ€lgida rakenduste, workflow'de ja mappings'e tööd, korduste, logide seeriat. Aeg-ajalt muutus konsool tĂ€ielikult kĂ€ttesaamatuks, kas ei uuendatud DISi jooksvaid protsesside andmeid vĂ”i ilmnesid vead lehtede laadimisel.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Java parameetrite valimine töö stabiliseerimiseks

Probleemi lahendamine kÀis mitmeti, tehti katsetusi parameetrite muutmiseks, koguti logisid, jstack'i, saadeti tugiisikutele, samal ajal toimus aktiivne Google'i otsimine ja lihtsalt jÀlgimine.

Esiteks loodi eraldi MRS jĂ€lgimiseks, nagu hiljem selgus, on see ĂŒks meie keskkondade peamisi ressursitarbijaid, kuna mappings'e jooksud toimuvad vĂ€ga intensiivselt. Muudeti java heap'i parameetreid ja hulgaliselt teisi.
Tulemuseks suudeti jĂ€rgmise Informatica 10.1.1 vĂ€rskenduse kĂ€igus konsooli ja monitori töö stabiliseerida, arendajad hakkasid tĂ”husamalt töötama ning regulaarprotsessid muutusid ĂŒha regulaarsemaks.

Huvitav on arenduse ja haldamise vaheline koostöö. Üks peamisi aspekte on ĂŒldine arusaamine, kuidas kĂ”ik töötab, mida vĂ”ib teha ja mida mitte, mis on keeruliste sĂŒsteemide kasutamisel alati oluline. SeetĂ”ttu on soovitatav kĂ”igepealt koolitada haldajate meeskond selle kohta, kuidas tarkvara hallata, ning arendajate meeskond selle kohta, kuidas kirjutada koodi ja kujundada protsesse sĂŒsteemis, ning alles seejĂ€rel lasta neil ĂŒhiselt tulemusi saavutada. See on tĂ”eliselt oluline, kui aega ei ole lĂ”pmatult. Paljusid probleeme saab lahendada juhuslikult katsetades, kuid mĂ”nel juhul on vajalikud eelnevad teadmised — meie juhtum kinnitab selle aksioomi mĂ”istmise tĂ€htsust.

NĂ€iteks pĂŒĂŒdes aktiveerida versiooni haldust MRS-is (mida lĂ”puks selgus, et oli vajalik teine SVN versioon), mĂ€rkisime murelikult mĂ”ne aja pĂ€rast, et sĂŒsteemi taaskĂ€ivitamise aeg on tĂ”usnud mitme kĂŒmne minutini. PĂ”hjuse leidmisel viivituse alguses ning versiooni halduse keelamisel töötas kĂ”ik taas hĂ€sti.

MĂ”ned mĂ€rkimisvÀÀrsed takistused, mis on seotud Informatica'ga, hĂ”lmavad epohhalist vĂ”itlust suurenevate Java voogudega. Ühel hetkel tuli aeg replikatsiooniks, et edastada vĂ€ljakujunenud protsessid suure hulga allika sĂŒsteemide vahel. Selgus, et kaugelki kĂ”ik protsessid versioonis 10.1.1 ei töötanud hĂ€sti, ja mĂ”ne aja pĂ€rast muutus DIS kasutuskĂ”lbmatuks. Leiti kĂŒmneid tuhandeid vooge, nende arv kasvas eriti mĂ€rgatavalt rakenduste juurutamise protseduuri kĂ€igus. MĂ”nikord tuli töövĂ”ime taastamiseks mitu korda pĂ€evas taaskĂ€ivitada.

Siinkohal tuleb tĂ€nada tugiteenust, probleemid lokaliseeriti ja parandati suhteliselt kiiresti EBF (Emergency Bug Fix) abil – pĂ€rast seda oli kĂ”igil tunne, et tööriist töötab tĂ”eliselt.

See töötab ikkagi!

Siiski, kui Informatica sihitud reĆŸiimis tööle hakati, nĂ€gi see vĂ€lja jĂ€rgmiselt. Informatica versioon 10.1.1HF1 (HF1 tĂ€hendab HotFix1, tootja pakkumine EBF kogumikust) koos lisatud EBF-dega, mis parandasid meie mastaapsuse probleeme ja veel mĂ”ned, ĂŒhel kolmest GRID-i serverist, 20 x86_64 tuuma ja suur, aeglane kohalik ketaste massiiv — see serveri konfiguratsioon Hadoop klusteri jaoks. Teisel samasugusel serveril on Oracle DB, millega töötab nii Informatica domeen kui ka ETL juhtimismehhanism. KĂ”ike seda jĂ€lgitakse meeskonnas kasutatavate standardsete jĂ€lgimistööriistade (Zabbix + Grafana) abil, nii Informatica teenuste kui ka selle kaudu toimuvate laadimisprotsesside osas. Praegu sĂ”ltub tootlikkus ja töö stabiilsus vĂ€listest teguritest, sĂ”ltuvalt seadistustest, mis piiravad koormust.

Erinevalt vĂ”ib rÀÀkida GRID-ist. Keskkond ehitati kolme nodiga, koormuse tasakaalustamise vĂ”imalusega. Kuid testimise kĂ€igus avastati, et meie rakenduste kĂ€ivitatavate eksemplaride vahelise suhtluse probleemide tĂ”ttu ei töötanud see konfiguratsioon oodatud viisil ning otsustati ajutiselt loobuda sellest skeemist, vĂ€lja arvatud kaks kolmest nodist domeenist. Samas jĂ€i skeem muutumatuks ja praegu on see tĂ”epoolest GRID-teenus, kuid ĂŒhe nodiga.

Praegu on endiselt probleem, mis on seotud tootlikkuse langusega monitori skeemi regulaarse puhastamise ajal — samaaegsete protsesside kĂ€imapaneku ja monitori puhastamise ajal vĂ”ivad tekkida ETL juhtimismehhanismi töö hĂ€ired. See lahendatakse praegu „taburetiga“ — manualne monitori skeemi puhastus, kaotades kĂ”ik varasemad andmed. See ei ole tootmises eriti kriitiline, normaalses töös, kuid otsitakse senini korralikku lahendust.

Sellest samast olukorrast tuleneb veel ĂŒks probleem — mĂ”nikord toimub meie juhtimismehhanismi korduv kĂ€ivitamine.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Rakenduse korduvad kÀivitamised, mis toovad kaasa mehhanismi rikke.

Kava alusel kĂ€ivitades vĂ”ivad sĂŒsteemi suure koormuse hetked mĂ”nikord tuua kaasa olukordi, mis viivad mehhanismi rikkumiseni. Probleem on endiselt kĂ€sitsi lahendatav ning otsitakse pĂŒsivat lahendust.

KokkuvĂ”ttes vĂ”ib öelda, et suurt koormust arvestades on ÀÀrmiselt tĂ€htis tagada piisavad ressursid, mis kehtib nii Informatica riistvararessursside kui ka selle andmebaasi jaoks, samuti tagada nende optimaalne seadistamine. Lisaks jÀÀb lahtiseks kĂŒsimus, milline andmebaasi paigutusskeem on parem — kas eraldi hostis vĂ”i samal, kus töötab Informatica tarkvara. Ühest kĂŒljest osutub ĂŒhe serveri kasutamine odavamaks ja koos töötades kaob praktiliselt probleem vĂ”rgus suhtlemisel, teisest kĂŒljest koormus andmebaasist lisandub Informatica koormusele.

Nagu igas tÔsises tootes, on ka Informatica puhul naljakaid hetki.
Kord, uurides mĂ”nda avariid, mĂ€rkasin, et MRS logides on sĂŒndmuste ajad kummaliselt mĂ€rgitud.

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Ajatu dualism MRS logides "disaini tÔttu"

Selgus, et ajatempleid kirjutatakse 12-tunnises vormingus, ilma AM/PM tĂ€histamata, st kas enne vĂ”i pĂ€rast keskpĂ€eva. Selle kohta oli isegi avatud pilet ja saadi ametlik vastus — just nii oli plaanitud, MRS logides olevad ajatempli kirjeldused on tĂ”epoolest selles formadis. See tekitab mĂ”nikord teatud intriige seoses selle, millal mĂ”ni ERROR ilmneb...

PĂŒĂŒelda parema poole

TĂ€napĂ€eval on Informatica piisavalt stabiilne tööriist, mugav administraatoritele ja kasutajatele, ĂŒlimalt vĂ”imas oma praeguste vĂ”imaluste ja potentsiaali poolest. See ĂŒletab meie funktsionaalsed vajadused kordades ja de facto kasutatakse seda projektis vĂ€hem iseloomulikus ja tĂŒĂŒpilises viisis. Raskused on osaliselt seotud sellega, kuidas mehhanismid töötavad — spetsiifika seisneb selles, et lĂŒhikese aja jooksul kĂ€ivitatakse suur hulk vooge, mis intensiivselt uuendavad parameetrigruppide seadeid ja töötavad andmebaasiga, samas kui serveri riistvararessursid on protsessorite poolt praktiliselt tĂ€ielikult Ă€ra kasutatud.

Praegu oleme jĂ”udnud lĂ€hedale ĂŒleminekule Informatica 10.2.1 vĂ”i 10.2.2 versioonile, kus on ĂŒmber töötatud mĂ”ned sisemised mehhanismid, ning toetusele lubatakse, et meil ei esine enam mitmeid praeguseid jĂ”udlus- ja tööprobleeme. Samuti oodatakse riistvara osas ideaalseid servereid meie konfiguratsioonile, arvestades varu lĂ€hitulevikus laohalduse kasvu ja arendamise tĂ”ttu.

Loomulikult tuleb teha testimine, ĂŒhilduvuse kontroll ja vĂ”imalikud arhitektuurilised muudatused HA GRID osas. Informatica areng jĂ€tkub, kuna lĂŒhiajaliselt ei saa me sĂŒsteemi asendamiseks midagi paigaldada.
Ja need, kes hiljem vastutavad selle sĂŒsteemi eest, suudavad kindlasti viia selle nĂ”utud usaldusvÀÀrsuse ja jĂ”udluse tasemele, mille kliendid nĂ”uavad.

Artikli on koostanud Andmete Halduse Meeskond „Rostelecom“

IgapÀevastest tÔrgetest stabiilsuseni: Informatica 10 administraatori silmade lÀbi
Kehtiv Informatica logo

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster