Apache Storm 2.0 eto iširo pinpin wa

ri imọlẹ itusilẹ pataki ti eto sisẹ iṣẹlẹ ti o pin Iji Apache 2.0, ohun akiyesi fun iyipada rẹ si faaji tuntun ti a ṣe ni Java, dipo ede Clojure ti a lo tẹlẹ.

Ise agbese na gba ọ laaye lati ṣeto iṣeduro iṣeduro ti awọn iṣẹlẹ pupọ ni akoko gidi. Fun apẹẹrẹ, Storm le ṣee lo lati ṣe itupalẹ awọn ṣiṣan data ni akoko gidi, ṣiṣe awọn iṣẹ ikẹkọ ẹrọ, ṣeto iširo ti nlọsiwaju, ṣe RPC, ETL, ati bẹbẹ lọ. Eto naa ṣe atilẹyin iṣupọ, ṣiṣẹda awọn atunto ifarada-aṣiṣe, ipo sisẹ data ti o ni iṣeduro ati pe o ni iṣẹ giga, ti o to lati ṣe ilana diẹ sii ju awọn ibeere miliọnu kan fun iṣẹju keji lori ipade iṣupọ kan.

Ibarapọ pẹlu ọpọlọpọ awọn ọna ṣiṣe ṣiṣe isinyi ati awọn imọ-ẹrọ data data jẹ atilẹyin. Awọn faaji iji jẹ gbigba ati sisẹ aiṣedeede, awọn ṣiṣan data imudojuiwọn nigbagbogbo nipa lilo awọn iṣelọpọ eka lainidii pẹlu agbara lati pin laarin awọn ipele oriṣiriṣi ti awọn iṣiro. Ise agbese na ni a fi fun agbegbe Apache lẹhin Twitter ti gba BackType, ile-iṣẹ ti o ni idagbasoke akọkọ. Ni iṣe, Storm ti lo ni BackType lati ṣe itupalẹ ifarabalẹ ti awọn iṣẹlẹ ni awọn microblogs, nipa ifiwera lori fly awọn tweets tuntun ati awọn ọna asopọ ti a lo ninu wọn (fun apẹẹrẹ, a ṣe ayẹwo bi awọn ọna asopọ ita tabi awọn ikede ti a tẹjade lori Twitter jẹ atunjade nipasẹ awọn olukopa miiran. ).

Iṣẹ ṣiṣe ti iji jẹ akawe si pẹpẹ Hadoop, pẹlu iyatọ bọtini ni pe data ko ni fipamọ sinu ile-itaja, ṣugbọn o jẹ ingested ni ita ati ni ilọsiwaju ni akoko gidi. Iji ko ni Layer ibi ipamọ ti a ṣe sinu ati pe ibeere itupalẹ bẹrẹ lati lo si data ti nwọle titi ti o fi fagilee (lakoko ti Hadoop nlo awọn iṣẹ MapReduce akoko ipari, iji lo imọran ti ṣiṣiṣẹ nigbagbogbo “topologies”). Ipaniyan ti awọn olutọju le pin kaakiri awọn olupin pupọ - Iji ṣe afiwe iṣẹ laifọwọyi pẹlu awọn okun lori awọn apa iṣupọ oriṣiriṣi.

Eto naa ni akọkọ ti kọ ni Clojure ati ṣiṣe ni inu ẹrọ foju JVM. Apache Foundation ti ṣe ifilọlẹ ipilẹṣẹ kan lati lọ si Storm si ekuro tuntun ti a kọ ni Java, awọn abajade eyiti a dabaa ni idasilẹ Apache Storm 2.0. Gbogbo awọn paati ipilẹ ti pẹpẹ ni a tun kọ ni Java. Atilẹyin fun awọn olutọju kikọ ni Clojure ti wa ni idaduro, ṣugbọn ni bayi ti a funni ni irisi awọn abuda. Iji 2.0.0 nilo Java 8. Awoṣe iṣakojọpọ olona-pupọ ti ni atunṣe patapata, gbigba laaye se aseyori ilosoke akiyesi ni iṣẹ (fun diẹ ninu awọn topologies, awọn idaduro ti dinku nipasẹ 50-80%).

Apache Storm 2.0 eto iširo pinpin wa

Ẹya tuntun naa tun funni ni API Awọn ṣiṣan titẹ tuntun ti o fun ọ laaye lati ṣalaye awọn oluṣakoso nipa lilo awọn iṣẹ ṣiṣe siseto iṣẹ-ṣiṣe. API tuntun jẹ imuse lori oke ti ipilẹ API boṣewa ati ṣe atilẹyin iṣajọpọ adaṣe ti awọn iṣẹ lati mu sisẹ wọn pọ si. API Windowing fun awọn iṣẹ ṣiṣe window ti ṣafikun atilẹyin fun fifipamọ ati mimu-pada sipo ipo ni ẹhin.

Atilẹyin fun akiyesi awọn orisun afikun nigba ṣiṣe awọn ipinnu ko ni opin si
Sipiyu ati iranti, gẹgẹbi nẹtiwọki ati awọn eto GPU. Nọmba nla ti awọn ilọsiwaju ti ṣe lati rii daju pe iṣọpọ pẹlu pẹpẹ Kafka. Eto iṣakoso iwọle ti gbooro si pẹlu agbara lati ṣẹda awọn ẹgbẹ alakoso ati awọn ami aṣoju. Awọn ilọsiwaju ti o ni ibatan si SQL ati atilẹyin awọn metiriki. Awọn aṣẹ titun ti han ni wiwo alabojuto fun ṣiṣatunṣe ipo iṣupọ.

Awọn agbegbe ti ohun elo fun Iji:

  • Ṣiṣe awọn ṣiṣan ti data titun tabi awọn imudojuiwọn data ni akoko gidi;
  • Iṣiro Ilọsiwaju: Iji le ṣiṣẹ awọn ibeere ti o tẹsiwaju ati ilana awọn ṣiṣan lilọsiwaju, jiṣẹ awọn abajade ṣiṣe si alabara ni akoko gidi.
  • Ipe Ilana Latọna jijin Pinpin (RPC): Iji le ṣee lo lati pese ipaniyan ti o jọra ti awọn ibeere aladanla orisun. Iṣẹ kan (“topology”) ni Storm jẹ iṣẹ ti a pin kaakiri awọn apa ti o duro de awọn ifiranṣẹ lati de ti o nilo lati ni ilọsiwaju. Lẹhin gbigba ifiranṣẹ kan, iṣẹ naa ṣe ilana rẹ ni agbegbe agbegbe ati da abajade pada. Apeere ti lilo RPC ti o pin yoo jẹ lati ṣe ilana awọn ibeere wiwa ni afiwe tabi ṣe awọn iṣẹ ṣiṣe lori eto nla kan.

Awọn ẹya ara ẹrọ iji:

  • Awoṣe siseto ti o rọrun ti o rọrun pupọ simplifies ṣiṣe data akoko gidi;
  • Atilẹyin fun eyikeyi awọn ede siseto. Awọn modulu wa fun Java, Ruby ati Python, aṣamubadọgba fun awọn ede miiran jẹ irọrun ọpẹ si ilana ibaraẹnisọrọ ti o rọrun pupọ ti o nilo nipa awọn laini koodu 100 lati ṣe atilẹyin;
  • Ifarada aṣiṣe: lati ṣiṣẹ iṣẹ ṣiṣe data kan, o nilo lati ṣe agbekalẹ faili idẹ kan pẹlu koodu. Iji yoo pin kaakiri faili idẹ ni ominira kọja awọn apa iṣupọ, so awọn olutọju ti o ni nkan ṣe pẹlu rẹ, ati ṣeto abojuto. Nigbati iṣẹ naa ba pari, koodu yoo jẹ alaabo laifọwọyi lori gbogbo awọn apa;
  • Petele scalability. Gbogbo awọn iṣiro ni a ṣe ni ipo afiwe; bi ẹru naa ṣe n pọ si, o to lati sopọ awọn apa tuntun nirọrun si iṣupọ;
  • Igbẹkẹle. Iji ṣe idaniloju pe gbogbo ifiranṣẹ ti nwọle ti ni ilọsiwaju ni kikun ni o kere ju lẹẹkan. Ifiranṣẹ naa yoo ṣiṣẹ ni ẹẹkan nikan ti ko ba si awọn aṣiṣe nigbati o ba n kọja nipasẹ gbogbo awọn oluṣakoso; ti awọn iṣoro ba dide, lẹhinna awọn igbiyanju ṣiṣe aṣeyọri yoo tun ṣe.
  • Iyara. Awọn koodu Storm ti kọ pẹlu iṣẹ giga ni ọkan ati lo eto naa fun fifiranṣẹ asynchronous iyara ZeroMQ.

orisun: opennet.ru

Fi ọrọìwòye kun