Iskrenje - Izčrpen priročnik za iskrenje

Kazalo:

Anonim

Uvod v iskrivo pretakanje

Apache Spark Streaming je ena temeljnih bistvenih sestavnih delov Apache Spark, ki je v realnem času obdelava podatkovnih pripomočkov, ki se uporablja za pretok podatkov v realnem času, za razliko od tradicionalnih paketnih opravil Hadoop, ki se uporabljajo za izvajanje paketnih opravil namesto tega sprotno pretakanje podatkov v realnem času. Uporablja zmogljivost hitrega načrtovanja jedra Spark za izvajanje analitike hitrega iskrivega pretoka, ki v bistvu vključuje zaužitje podatkov v obliki mikro in mini paketov za izvajanje pretvorb RDD na teh nizih podatkov v določenem obdobju oken. Pretok Apache Spark naj bi porabil iz številnih gorvodnih tokov in tako dokončal cevovod, kot so Apache Kafka, Flume, RabbitMQ, ZeroMQ, Kinesis, TCP / IP vtičnice, Twitter itd. Strukturirani nabor podatkov, ki so na voljo v Spark 2. x + različice se uporabljajo za strukturirano pretakanje.

Kako deluje iskrenje?

  • V primeru iskrivega pretoka so tokovi podatkov razdeljeni na fiksne serije, imenovane tudi DStreams, kar je interno fiksno zaporedje števila RDD-jev. RDD-ji se torej obdelujejo z uporabo Spark API-ja, zato se dobljeni rezultati nahajajo v serijah. Diskretizirane tokovne operacije, ki so bodisi stanja bodisi stanja brez transformacije, vključujejo tudi izhodne operacije, vhodne DStream operacije in tudi sprejemnike. Ti tokovi so osnovna raven odvzema, ki jo zagotavlja Apache Spark streaming, ki je neprekinjen tok Spark RDD-jev.
  • Omogoča tudi, da se odpornost napak uporablja za Dstream-ove, podobne RDD-jem, dokler je na voljo kopija podatkov in je zato vsako stanje mogoče ponovno izračunati ali vrniti v prvotno stanje z uporabo Sparkovega linijskega grafa nabor RDD-jev. Pri tem je treba pomisliti, da se Dstreams uporabljajo za prevajanje osnovnih operacij na njihovem osnovnem nizu RDD-jev. Te pretvorbe na osnovi RDD opravi in ​​izračuna Spark Engine. Operacije Dstream se uporabljajo za zagotavljanje osnovne ravni podrobnosti in razvijalcu omogočijo visoko raven API za razvojne namene.

Prednosti iskrečega pretakanja

Obstajajo različni razlogi, zaradi katerih je uporaba pretočnega iskrenja dodatna prednost. O nekaterih od njih bomo razpravljali v našem postu tukaj.

  1. Poenotenje pretočnih, šaržnih in interaktivnih delovnih obremenitev: Nizov podatkov je mogoče enostavno integrirati in uporabiti s katerim koli delovnim obremenitvam, ki jih v neprekinjenih sistemih nikoli ni bilo lahko opraviti, zato je to enoten motor.
  2. Napredna raven analitike, skupaj s strojnim učenjem in poizvedbami SQL: Ko delate na zapletenih delovnih obremenitvah, je vedno potrebna uporaba nenehnega učenja in tudi s posodobljenimi modeli podatkov. Najboljši del te komponente Spark je, da se zlahka vključi v MLib ali katero koli drugo namensko knjižnico strojnega učenja.
  3. Hitro odpoved in tudi obnovo za stragglerja: Obnovitev okvare in odstopanje napak je ena od osnovnih funkcij, ki so na voljo pri pretakanju iskre.
  4. Uravnavanje obremenitve: ozka grla se pogosto pojavljajo med sistemi zaradi neenakomernih obremenitev in ravnotežja, ki jih izvajamo, zato je nujno potrebno enakomerno uravnotežiti obremenitev, ki jo ta sestavni del iskre.
  5. Zmogljivost: Zaradi tehnike računanja v pomnilniku, ki uporablja notranji pomnilnik bolj kot zunanji trdi disk, je zmogljivost Spark zelo dobra in učinkovita v primerjavi z drugimi Hadoop sistemi.

Operacije iskrivega pretakanja

1) Transformacijske operacije pri iskanju iskri: Na enak način se podatki preoblikujejo iz nabora RDD-jev, tudi tukaj se podatki transformirajo iz DStreams in ponuja veliko preobrazb, ki so na voljo na običajnih Spark RDD-jih. Nekateri od njih so:

  • Map (): Uporablja se za vrnitev nove oblike Dstream-a, ko se vsak element prenese skozi funkcijo.
    Na primer, data.map (vrstica => (vrstica, vrstica.broj))
  • flatMap (): Ta je podoben zemljevidu, vendar je vsak element preslikan na 0 ali več preslikanih enot.
    Primer, data.flatMap (vrstice => vrstice.split (""))
  • filter (): Ta se uporablja za vrnitev novega niza Dstream, tako da vrne zapise, ki so filtrirani za našo uporabo.
    Primer, filter (vrednost => vrednost == ”iskra”)
  • Union (): Uporablja se za vrnitev novega niza Dstream, ki je sestavljen iz podatkov, združenih iz vhodnih Dstream in drugih Dstreams.
    Primer, Dstream1.union (Dstream2) .union (Dstream3)

2) Posodobite stanje s ključnim delovanjem

To vam omogoča, da ohranite poljubno stanje, tudi kadar to nenehno posodabljate z novim podatkom. Od vas bi morali določiti stanje, ki je lahko poljubnega tipa, in določiti funkcijo posodabljanja stanja, kar pomeni določitev stanja s predhodnim stanjem in uporabo novih vrednosti iz vhodnega toka. V vsakem paketnem sistemu bo iskra uporabila isto funkcijo posodabljanja stanja za vse razširjene ključe.

Primer:

funkcija posodabljanja def (NV, RC):

če RC ni:

RC = 0

povratna vsota (NV, RC) #Nv so nove vrednosti in RC se šteje

Zaključek

Sparking streaming je eden najučinkovitejših sistemov za izgradnjo cevovodov pravega pretočnega tipa, zato se uporablja za premagovanje vseh težav, s katerimi se srečujemo z uporabo tradicionalnih sistemov in metod. Zato vsi razvijalci, ki se učijo napredovati v komponento iskrenja, stopajo na najstrožjo enotno točko okvira, ki ga je mogoče uporabiti za zadovoljevanje vseh razvojnih potreb. Zato lahko varno rečemo, da njegova uporaba povečuje produktivnost in uspešnost v projektih in podjetjih, ki se trudijo ali se veselijo, da bodo uporabljali ekosistem velikih podatkov. Upam, da vam je bil naš članek všeč. Spremljajte več takšnih člankov.

Priporočeni članki

To je vodnik za iskrenje. Tukaj razpravljamo o uvodu v iskrenje, kako deluje skupaj s prednostmi in primeri. Ogledate si lahko tudi druge naše sorodne članke -

  1. Kaj je Hadoop Streaming?
  2. Iskreni ukazi
  3. Vadnice o namestitvi iskrice
  4. Razlika med Hadoop proti Spark
  5. Spark DataFrame | Prednosti
  6. Top 6 komponent iskre