Sistema tal-kompjuters distribwit Apache Storm 2.0 disponibbli

Rajt id-dawl rilaxx sinifikanti ta 'sistema ta' pproċessar ta 'avvenimenti mqassma Apache Storm 2.0, notevoli għat-tranżizzjoni tagħha għal arkitettura ġdida implimentata f'Java, minflok il-lingwa Clojure użata qabel.

Il-proġett jippermettilek li torganizza ipproċessar garantit ta 'diversi avvenimenti f'ħin reali. Pereżempju, Storm tista 'tintuża biex tanalizza flussi ta' data f'ħin reali, tmexxi kompiti ta 'tagħlim bil-magni, torganizza kompjuters kontinwu, timplimenta RPC, ETL, eċċ. Is-sistema tappoġġja r-raggruppament, il-ħolqien ta 'konfigurazzjonijiet tolleranti għall-ħsarat, il-mod ta' pproċessar tad-dejta garantit u għandha prestazzjoni għolja, biżżejjed biex tipproċessa aktar minn miljun talba kull sekonda fuq node ta 'cluster wieħed.

L-integrazzjoni ma 'diversi sistemi ta' pproċessar ta 'kju u teknoloġiji ta' database hija appoġġjata. L-arkitettura Storm tinvolvi li tirċievi u tipproċessa flussi ta 'dejta mhux strutturati u aġġornati kontinwament bl-użu ta' proċessuri kumplessi arbitrarji bil-kapaċità li jaqsmu bejn stadji differenti ta 'kalkoli. Il-proġett ġie mgħoddi lill-komunità Apache wara li Twitter akkwista BackType, il-kumpanija li oriġinarjament żviluppat il-qafas. Fil-prattika, Storm intużat f'BackType biex janalizza r-riflessjoni tal-avvenimenti fil-mikroblogs, billi tqabbel fuq il-fly tweets ġodda u r-rabtiet użati fihom (pereżempju, ġie vvalutat kif links esterni jew avviżi ppubblikati fuq Twitter ġew imxandra mill-ġdid minn parteċipanti oħra ).

Il-funzjonalità ta 'Storm titqabbel mal-pjattaforma Hadoop, bid-differenza ewlenija tkun li d-dejta mhix maħżuna f'maħżen, iżda hija inġerita esternament u pproċessata f'ħin reali. Storm m'għandux saff ta 'ħażna inkorporat u l-mistoqsija analitika tibda tiġi applikata għad-dejta li tidħol sakemm tiġi kkanċellata (filwaqt li Hadoop juża impjiegi MapReduce għal żmien finit, Storm juża l-idea li taħdem kontinwament "topoloġiji"). L-eżekuzzjoni ta 'handlers tista' tiġi mqassma fuq diversi servers - Storm awtomatikament parallelizes xogħol b'ħjut fuq nodi ta 'cluster differenti.

Is-sistema kienet oriġinarjament miktuba f'Clojure u taħdem ġewwa l-magna virtwali JVM. Il-Fondazzjoni Apache nediet inizjattiva biex temigra Storm għal kernel ġdid miktub f'Java, li r-riżultati tiegħu huma proposti fir-rilaxx ta 'Apache Storm 2.0. Il-komponenti bażiċi kollha tal-pjattaforma huma miktuba mill-ġdid f'Java. L-appoġġ għal dawk li jieħdu ħsieb il-kitba f'Clojure inżamm, iżda issa huwa offrut fil-forma ta' rbit. Storm 2.0.0 jeħtieġ Java 8. Il-mudell tal-ipproċessar b'ħafna kamini ġie ddisinjat kompletament mill-ġdid, li jippermetti tikseb żieda notevoli fil-prestazzjoni (għal xi topoloġiji, id-dewmien tnaqqas b'50-80%).

Sistema tal-kompjuters distribwit Apache Storm 2.0 disponibbli

Il-verżjoni l-ġdida toffri wkoll API Streams ittajpjata ġdida li tippermettilek tiddefinixxi handlers billi tuża operazzjonijiet ta 'stil ta' programmazzjoni funzjonali. L-API l-ġdida hija implimentata fuq l-API bażi standard u tappoġġja l-għaqda awtomatika tal-operazzjonijiet biex jiġi ottimizzat l-ipproċessar tagħhom. L-API Windowing għall-operazzjonijiet tat-twieqi żiedet appoġġ għall-iffrankar u r-restawr tal-istat fil-backend.

Appoġġ biex jitqiesu riżorsi addizzjonali meta jittieħdu deċiżjonijiet mhux limitati għal
CPU u memorja, bħal settings tan-netwerk u tal-GPU. Sar għadd kbir ta’ titjib biex tiġi żgurata l-integrazzjoni mal-pjattaforma Kafka. Is-sistema ta 'kontroll tal-aċċess ġiet estiża biex tinkludi l-abbiltà li jinħolqu gruppi ta' amministraturi u tokens ta 'delega. Żid titjib relatat mal-SQL u l-appoġġ tal-metriċi. Kmandi ġodda dehru fl-interface tal-amministratur għad-debugging tal-istat tal-cluster.

Oqsma ta' applikazzjoni għal Storm:

  • Ipproċessar ta' flussi ta' data ġdida jew aġġornamenti tad-databases f'ħin reali;
  • Kompjuter Kontinwu: Storm tista 'tmexxi mistoqsijiet kontinwi u tipproċessa flussi kontinwi, u tagħti riżultati tal-ipproċessar lill-klijent f'ħin reali.
  • Sejħa ta' Proċedura Remota Mqassma (RPC): Storm tista' tintuża biex tipprovdi eżekuzzjoni parallela ta' mistoqsijiet li jużaw ħafna riżorsi. Xogħol ("topoloġija") f'Storm hija funzjoni mqassma fuq in-nodi li tistenna li jaslu messaġġi li jridu jiġu pproċessati. Wara li tirċievi messaġġ, il-funzjoni tipproċessah fil-kuntest lokali u tirritorna r-riżultat. Eżempju ta 'użu ta' RPC distribwit ikun li tipproċessa mistoqsijiet ta 'tfittxija b'mod parallel jew twettaq operazzjonijiet fuq sett kbir ta' settijiet.

Karatteristiċi tal-Maltempata:

  • Mudell ta’ programmazzjoni sempliċi li jissimplifika bil-kbir l-ipproċessar tad-dejta f’ħin reali;
  • Appoġġ għal kwalunkwe lingwa ta 'programmar. Il-moduli huma disponibbli għal Java, Ruby u Python, l-adattament għal lingwi oħra huwa faċli grazzi għal protokoll ta 'komunikazzjoni sempliċi ħafna li jeħtieġ madwar 100 linja ta' kodiċi biex isostni;
  • Tolleranza għall-ħsarat: biex tmexxi xogħol ta 'proċessar tad-dejta, għandek bżonn tiġġenera fajl vażett b'kodiċi. Storm se jqassam dan il-fajl vażett b'mod indipendenti fuq in-nodi tal-cluster, jgħaqqad il-handlers assoċjati miegħu, u jorganizza l-monitoraġġ. Meta x-xogħol jitlesta, il-kodiċi jiġi awtomatikament diżattivat fuq in-nodi kollha;
  • Skalabbiltà orizzontali. Il-kalkoli kollha jsiru b'mod parallel; hekk kif it-tagħbija tiżdied, huwa biżżejjed li sempliċiment tgħaqqad nodi ġodda mal-cluster;
  • Affidabilità. Storm jiżgura li kull messaġġ li jkun dieħel jiġi pproċessat bis-sħiħ mill-inqas darba. Il-messaġġ jiġi pproċessat darba biss jekk ma jkun hemm l-ebda żbalji meta jgħaddi minn min jimmaniġġja l-persuni kollha; jekk jinqalgħu l-problemi, imbagħad it-tentattivi tal-ipproċessar li ma rnexxewx jiġu ripetuti.
  • Veloċità. Il-kodiċi ta 'Storm huwa miktub b'rendiment għoli f'moħħu u juża s-sistema għal messaġġi asinkroniċi veloċi ZeroMQ.

Sors: opennet.ru

Żid kumment