Apache Storm 2.0 e ajoa tsamaiso ea komporo e fumaneha

o bone lesedi tokollo e kholo ea sistimi e sebetsanang le liketsahalo tse ajoang Apache Storm 2.0, e hlokomelehang ka phetoho ea eona ho ea mohahong o mocha o sebelisitsoeng Java, ho e-na le puo ea Clojure e neng e sebelisoa pele.

Morero o u lumella ho hlophisa ts'ebetso e netefalitsoeng ea liketsahalo tse fapaneng ka nako ea nnete. Mohlala, Storm e ka sebelisoa ho sekaseka melapo ea data ka nako ea nnete, ho tsamaisa mesebetsi ea ho ithuta ka mochini, ho hlophisa komporo e tsoelang pele, ho kenya tšebetsong RPC, ETL, jj. Sistimi e ts'ehetsa ho kopanya, ho theha litlhophiso tse mamellang liphoso, mokhoa o netefalitsoeng oa ts'ebetso ea data mme o na le ts'ebetso e phahameng, e lekaneng ho sebetsana le likopo tse fetang milione ka motsotsoana sebakeng se le seng sa sehlopha.

Hoa tšehetsoa ho kopanngoa le mekhoa e fapaneng ea ho lokisa mela le mahlale a database. Mehaho ea Sefefo e kenyelletsa ho amohela le ho sebetsana le melapo ea data e sa hlophisehang, e lulang e nchafatsoa ka ho sebelisa li-processor tse rarahaneng tse nang le bokhoni ba ho arola mekhahlelo e fapaneng ea lipalo. Morero o ile oa fetisetsoa ho sechaba sa Apache ka mor'a hore Twitter e fumane BackType, k'hamphani e qalileng ho theha moralo. Ha e le hantle, Storm e ne e sebelisoa ho BackType ho hlahloba ponahalo ea liketsahalo tsa microblogs, ka ho bapisa li-tweets tse ncha tse fofang le lihokelo tse sebelisoang ho tsona (mohlala, ho ile ha hlahlojoa hore na lihokelo tsa kantle kapa liphatlalatso tse phatlalalitsoeng ho Twitter li ile tsa phatlalatsoa joang hape ke barupeluoa ba bang. ).

Ts'ebetso ea Storm e bapisoa le sethala sa Hadoop, ka phapang ea bohlokoa ke hore data ha e bolokehe sebakeng sa polokelo, empa e kenngoa ka ntle le ho sebetsoa ka nako ea sebele. Storm ha e na sebaka sa polokelo e hahelletsoeng mme potso ea tlhahlobo e qala ho sebelisoa ho data e kenang ho fihlela e hlakotsoe (ha Hadoop e sebelisa nako e telele ea ho fokotsa mesebetsi, Storm e sebelisa mohopolo oa ho tsoela pele ho tsamaisa "topology"). Ts'ebetso ea li- handlers e ka ajoa ho li-server tse 'maloa - Storm e ipapisa le mosebetsi ka likhoele ho li-cluster node tse fapaneng.

Sistimi e ne e ngotsoe ka Clojure qalong mme e sebetsa ka har'a mochini o sebetsang oa JVM. Motheo oa Apache o qalile mohato oa ho fallisetsa Storm ho kernel e ncha e ngotsoeng Java, eo liphetho tsa eona li sisintsoeng tokollong ea Apache Storm 2.0. Likarolo tsohle tsa motheo tsa sethala li ngotsoe bocha ka Java. Ts'ehetso bakeng sa basomi ba ho ngola ho Clojure e bolokiloe, empa joale e fanoa ka mokhoa oa ho tlama. Storm 2.0.0 e hloka Java 8. Mofuta oa ts'ebetso oa likhoele tse ngata o hlophisitsoe bocha, o lumella. finyella keketseho e hlokomelehang ea ts'ebetso (bakeng sa li-topology tse ling, ho lieha ho fokotsehile ka 50-80%).

Apache Storm 2.0 e ajoa tsamaiso ea komporo e fumaneha

Phetolelo e ncha e boetse e fana ka mofuta o mocha oa Streams API o u lumellang hore u hlalose batho ba sebetsang ka mokhoa o sebetsang oa mokhoa oa ho etsa mananeo. API e ncha e kenngoa ts'ebetsong ka holim'a API ea motheo e tloaelehileng 'me e tšehetsa ho kopanya ka mokhoa o itekanetseng oa ts'ebetso ho ntlafatsa ts'ebetso ea bona. Windowing API bakeng sa ts'ebetso ea lifensetere e ekelitse tšehetso bakeng sa ho boloka le ho khutlisetsa boemo ka morao.

Tšehetso ea ho ela hloko lisebelisoa tse eketsehileng ha u etsa liqeto tse sa felle feela ho
CPU le memori, joalo ka litlhophiso tsa marang-rang le GPU. Palo e kholo ea lintlafatso e entsoe ho netefatsa ho ikopanya le sethala Kafka. Sistimi ea taolo ea phihlello e ekelitsoe ho kenyelletsa bokhoni ba ho theha lihlopha tsa batsamaisi le ho fana ka li-tokens. Lintlafatso tse kentsoeng tse amanang le ts'ehetso ea SQL le metrics. Litaelo tse ncha li hlahile sebopehong sa motsamaisi bakeng sa ho lokisa boemo ba sehlopha.

Libaka tsa kopo ea Storm:

  • Ho sebetsana le melaetsa e mecha ea data kapa lintlafatso tsa database ka nako ea nnete;
  • Khomphutha e Tsoelang Pele: Sefefo se ka tsamaisa lipotso tse tsoelang pele 'me sa sebetsana le melapo e tsoelang pele, sa fana ka liphetho tsa ts'ebetso ho moreki ka nako ea nnete.
  • Call Distributed Remote Procedure Call (RPC): Sefefo se ka sebelisoa ho fana ka ts'ebetso e ts'oanang ea lipotso tse amanang le lisebelisoa. Mosebetsi ("topology") ho Storm ke mosebetsi o phatlalalitsoeng ho pholletsa le li-node tse emelang hore melaetsa e fihle e lokelang ho sebetsoa. Kamora ho amohela molaetsa, ts'ebetso e o sebetsa maemong a lehae ebe o khutlisa sephetho. Mohlala oa ho sebelisa RPC e phatlalalitsoeng e tla ba ho sebetsana le lipotso tsa patlo ka mokhoa o ts'oanang kapa ho etsa ts'ebetso ho sehlopha se seholo sa lihlopha.

Likarolo tsa Sefefo:

  • Mokhoa o bonolo oa lenaneo o nolofatsang haholo ts'ebetso ea data ea nako ea nnete;
  • Tšehetso bakeng sa lipuo leha e le life tsa lenaneo. Li-module li fumaneha bakeng sa Java, Ruby le Python, ho ikamahanya le lipuo tse ling ho bonolo ka lebaka la protocol e bonolo haholo ea puisano e hlokang mela e ka bang 100 ea khoutu ho e tšehetsa;
  • Mamello ea liphoso: ho tsamaisa mosebetsi oa ho lokisa data, o hloka ho hlahisa faele ea nkho ka khoutu. Storm e tla aba faele ena ea nkho e ikemetseng ho pholletsa le li-cluster node, e hokela litšoantšiso tse amanang le eona, 'me e hlophise tlhahlobo. Ha mosebetsi o phethiloe, khoutu e tla koaloa ka bo eona ho li-node tsohle;
  • scalability e tshekaletseng. Lipalo tsohle li etsoa ka mokhoa o ts'oanang; ha mojaro o ntse o eketseha, ho lekane ho hokahanya li-node tse ncha sehlopheng;
  • Ho tšepahala. Storm e netefatsa hore molaetsa o mong le o mong o kenang o sebetswa ka botlalo bonyane hang. Molaetsa o tla sebetsoa hanngoe feela haeba ho se na liphoso ha o feta har'a batšoasi bohle; haeba mathata a hlaha, liteko tse sa atleheng tsa ho sebetsa li tla phetoa.
  • Lebelo. Khoutu ea Storm e ngotsoe ka ts'ebetso e phahameng kelellong mme e sebelisa sistimi bakeng sa melaetsa e potlakileng ea asynchronous ZeroMQ.

Source: opennet.ru

Eketsa ka tlhaloso