Sistemi i llogaritjes së shpërndarë Apache Storm 2.0 është i disponueshëm

Ishte në dritë lëshimi i rëndësishëm i sistemit të përpunimit të shpërndarë të ngjarjeve Apache Storm 2.0, duke u veçuar për kalimin në një arkitekturë të re, të zbatuar në gjuhën Java, në vend të gjuhës Clojure që ishte përdorur më parë.

Projekti lejon organizimin e përpunimit të garantuar të ngjarjeve të ndryshme në kohë reale. Për shembull, Storm mund të përdoret për analizën e rrjedhave të dhënash në kohë reale, për kryerjen e detyrave për mësimin e makinerisë, për organizimin e llogaritjeve të vazhdueshme, implementimin e RPC, ETL dhe shumë të tjera. Sistemi mbështet klasterizimin, krijimin e konfiguracioneve me tolerancë ndaj dështimeve, modalitetin e përpunimit të garantuar të të dhënave dhe ka një performancë të lartë, të mjaftueshme për të përpunuar më shumë se një milion kërkesa në sekondë në një nod klasteri.

Mbështetet integrimi me sisteme të ndryshme të përpunimit të radhëve dhe teknologji databazash. Arkitektura Storm përfshin marrjen dhe përpunimin e rrjedhave të dhënash të pa strukturuara që përditësohen vazhdimisht, duke përdorur trajtues kompleksë të rastësishëm me mundësinë e ndarjes mes fazave të ndryshme të llogaritjeve. Projekti u dorëzua në komunitetin Apache pas përthithjes së Twitter nga kompania BackType, që fillimisht zhvilloi frameworkun. Në praktikë, Storm u përdor në BackType për të analizuar reflektimin e ngjarjeve në mikroblogje, duke përputhur në kohë reale tweet-e të reja dhe lidhjet që përdoren në to (për shembull, bëhej vlerësimi se si lidhjet e jashtme ose njoftimet e publikuara në Twitter ripublikohet nga pjesëmarrës të tjerë).

Funksionaliteti i Storm krahasohet me platformĂ«n Hadoop, ndĂ«rsa ndryshimi kryesor Ă«shtĂ« se tĂ« dhĂ«nat nuk ruhen nĂ« njĂ« depo, por vijnĂ« nga jashtĂ« dhe pĂ«rpunohen nĂ« kohĂ« reale. NĂ« Storm nuk ka njĂ« ndĂ«rfaqe tĂ« integruar pĂ«r organizimin e depozitave, dhe kĂ«rkesa analitike fillon tĂ« zbatohet pĂ«r tĂ« dhĂ«nat e pranuara deri sa tĂ« anulohet (nĂ«se nĂ« Hadoop pĂ«rdoren punĂ«t MapReduce qĂ« zĂ«nĂ« kohĂ« tĂ« caktuar, nĂ« Storm zbatohet ideja e "topologjive" qĂ« ekzekutohen vazhdimisht). Ekzekutimi i pĂ«rpunuesve mund tĂ« shpĂ«rndahet nĂ« disa serverĂ« — Storm automatikisht shpĂ«rndan punĂ«n me rrjedha nĂ« nyje tĂ« ndryshme tĂ« klasterit.

Sistemi fillimisht ishte shkruar në gjuhën Clojure dhe ekzekutohet brenda makinës virtuale JVM. Në fondin Apache u nis një iniciativë për të kaluar Storm në një bërthama të re, të shkruar në Java, rezultatet e së cilës u ofruan në lëshimin Apache Storm 2.0. Të gjitha komponentët bazë të platformës u riprogramuan në Java. Mbështetja për shkruarjen e përpunuesve në Clojure u ruajt, por tani ofrohet në formën e lidhjeve. Për të punuar me Storm 2.0.0 kërkohet Java 8. Modeli i ri i përpunimit shumëthëtar është riparë tërësisht, çka lejon të arrihet një rritje të dukshme të performancës (për disa topologji, vonesat u reduktuan me 50-80%).

Sistemi i llogaritjes së shpërndarë Apache Storm 2.0 është i disponueshëm

Në versionin e ri gjithashtu është ofruar një API i ri i tipizuar i Streams, i cili lejon përcaktimin e përpunuesve, duke përdorur operacione me stilin e programimit funksional. API-i i ri është realizuar mbi API-në bazë standarde dhe mbështet bashkimin automatik të operacioneve për optimizimin e përpunimit të tyre. Në API-në Windowing për operacionet me dritare është shtuar mbështetje për ruajtjen dhe rikuperimin e gjendjes në backend.

Në planifikuesin e nisjes së përpunuesve është shtuar mbështetje për marrjen parasysh të burimeve shtesë gjatë marrjes së vendimeve, që nuk kufizohen vetëm në
CPU dhe memorie, siç janë parametrat e rrjetit dhe GPU. Janë bërë shumë përmirësime që lidhen me sigurimin e integrimit me platformën Kafka. Sistemi i kontrollit të aksesit është zgjeruar, ku është krijuar mundësia e krijimit të grupeve të administratorëve dhe delegimit të tokeneve. Janë shtuar përmirësime në mbështetje të SQL dhe metrikeve. Në ndërfaqen e administratorit janë shtuar komanda të reja për debugin e gjendjes së klasit.

Fushat e aplikacionit të Storm:

  • PĂ«rpunimi i rrjedhave tĂ« dhĂ«nash tĂ« reja ose pĂ«rditĂ«simeve nĂ« bazĂ«n e tĂ« dhĂ«nave nĂ« kohĂ« reale;
  • Llogaritjet e vazhdueshme: Storm mund tĂ« kryejĂ« kĂ«rkesa tĂ« vazhdueshme dhe tĂ« pĂ«rpunojĂ« rrjedha tĂ« vazhdueshme, duke i kaluar rezultatet e pĂ«rpunimit klientit nĂ« kohĂ« reale.
  • Thirrja e procedurave tĂ« shpĂ«rndara (RPC): Storm mund tĂ« pĂ«rdoret pĂ«r tĂ« siguruar paralelizmin e ekzekutimit tĂ« kĂ«rkesave qĂ« pĂ«rdorin shumĂ« burime. Detyra ("topologjia") nĂ« Storm pĂ«rfaqĂ«son njĂ« funksion tĂ« shpĂ«rndarĂ« mbi nyje qĂ« pret tĂ« pranojĂ« mesazhe pĂ«r t'u pĂ«rpunuar. Pasi tĂ« pranojĂ« njĂ« mesazh, funksioni e pĂ«rpunon atĂ« nĂ« kontekstin lokal dhe kthen rezultatin. NjĂ« shembull i pĂ«rdorimit tĂ« RPC tĂ« shpĂ«rndarĂ« mund tĂ« jetĂ« pĂ«rpunimi paralel i kĂ«rkesave tĂ« kĂ«rkimit ose ekzekutimi i operacioneve mbi njĂ« grup tĂ« madh tĂ« shumĂ«zimeve.

Karakteristikat e Storm:

  • Modeli i thjeshtĂ« i programimit, i cili e thjeshton ndjeshĂ«m pĂ«rpunimin e tĂ« dhĂ«nave nĂ« kohĂ« reale;
  • MbĂ«shtetje pĂ«r çdo gjuhĂ« programimi. Ka module pĂ«r gjuhĂ«t Java, Ruby dhe Python, pĂ«rshtatja pĂ«r gjuhĂ« tĂ« tjera nuk paraqet vĂ«shtirĂ«si falĂ« njĂ« protokolli komunikimi shumĂ« tĂ« thjeshtĂ«, pĂ«r realizimin e mbĂ«shtetjes sĂ« tĂ« cilit nevojiten rreth 100 rreshta kodi;
  • QĂ«ndrueshmĂ«ri: pĂ«r tĂ« nisur njĂ« detyrĂ« pĂ«r pĂ«rpunimin e tĂ« dhĂ«nave, Ă«shtĂ« e nevojshme tĂ« krijohet njĂ« skedar jar me kodin. Storm do ta shpĂ«rndajĂ« automatikisht kĂ«tĂ« skedar jar nĂ« nyjet e klasterit, do t'i lidhĂ« pĂ«rpunuesit pĂ«rkatĂ«s dhe do tĂ« organizojĂ« monitorimin. Pas pĂ«rfundimit tĂ« detyrĂ«s, kodi do tĂ« çaktivizohet automatikisht nĂ« tĂ« gjitha nyjet;
  • ShkallĂ«zueshmĂ«ri horizontale. TĂ« gjitha llogaritjet kryhen nĂ« mĂ«nyrĂ« paralel, dhe me rritjen e ngarkesĂ«s, mjafton tĂ« lidhen nyje tĂ« reja nĂ« klaster;
  • BesueshmĂ«ri. Storm garanton qĂ« çdo mesazh qĂ« hyn do tĂ« pĂ«rpunojĂ« plotĂ«sisht tĂ« paktĂ«n njĂ« herĂ«. Mesazhi do tĂ« pĂ«rpunojĂ« vetĂ«m njĂ« herĂ« nĂ« rast se nuk ka gabime gjatĂ« kalimit tĂ« tĂ« gjithĂ« pĂ«rpunuesve, nĂ«se ndodhin probleme, pĂ«rpjekjet e dĂ«shtuara pĂ«r pĂ«rpunim do tĂ« pĂ«rsĂ«riten.
  • ShpejtĂ«si. Kodi i Storm Ă«shtĂ« shkruar me fokus nĂ« performancĂ«n e lartĂ« dhe pĂ«rdor njĂ« sistem pĂ«r shkĂ«mbim tĂ« shpejtĂ« asinkron tĂ« mesazheve ZeroMQ.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster