Pregled komponent iskri

Predstavljajte si, da imate na voljo 1000 nalog in zelo malo časa, da jih dokončate. Nekdo vam nudi pomoč tako, da zagotovite vire, ki vam lahko nekatere naloge vzamejo iz roke in jih opravite vzporedno z vami, tako da se vse naloge opravijo pravočasno. Da je nekdo Spark zate v računalniškem smislu. Apache Spark je odprtokodni in porazdeljeni računalniški okvir za velike podatke in ponuja optimiziran pristop za izvajanje analitike na velikih zbirkah podatkov. Deluje 100-krat hitreje kot Hadoop in ponuja različne knjižnice za različne namene, kot so izvajanje operacij SQL, ML, pretakanje, obdelava grafov itd. Spodaj bomo podrobno videli različne komponente iskrice.

Zgornje komponente iskre

Trenutno imamo v komponenti Spark Ekosistema 6 komponent, ki so Spark Core, Spark SQL, Spark Streaming, Spark MLlib, Spark GraphX ​​in SparkR. Poglejmo, kaj počne vsaka od teh komponent.

1. Spark Core

Spark Core je, kot že ime pove, jedrna enota procesa Spark. Skrbi za načrtovanje opravil, obnovitev napak, upravljanje pomnilnika in vhodno-izhodne operacije itd. Zamislite si to kot nekaj podobnega CPU-ju v računalniku. Podpira programske jezike, kot so Java, Scala, Python in R ter ponuja API-je za ustrezne jezike, s katerimi lahko sestavite svoje ETL opravilo ali naredite analitiko. Vse ostale komponente Spark imajo svoje API-je, ki so zgrajeni na vrhu Spark Core-ja. Zaradi svojih možnosti vzporedne obdelave in računanja v pomnilniku Spark lahko prenese kakršno koli delovno obremenitev.

Spark Core ima posebno vrsto podatkovne strukture, imenovano RDD (Resilient Distributed Dataset), ki podatke razporeja po vseh vozliščih znotraj grozda. RDD delujejo na paradigmi ocenjevanja Lazy, kjer je računanje zapomnjeno in se izvaja samo, kadar je to potrebno. To pomaga pri optimizaciji postopka z računanjem le potrebnih predmetov.

2. Spark SQL

Če ste sodelovali z zbirkami podatkov, razumete pomen SQL. Ali ne bi bilo nadvse presenetljivo, če ista koda SQL deluje N-krat hitreje tudi pri večjem naboru podatkov? Spark SQL vam pomaga manipulirati s podatki v Spark z uporabo SQL. Podpira povezave JDBC in ODBC, ki vzpostavljajo povezavo med objekti Java in obstoječimi bazami podatkov, skladiščem podatkov in orodji poslovne inteligence. Spark vključuje nekaj, kar imenujemo Dataframes, ki so strukturirano zbiranje podatkov v obliki stolpcev in vrstic.

Spark vam omogoča, da na teh podatkih delate s SQL. Okviri podatkov so enakovredni relacijskim tabelam in jih je mogoče sestaviti iz vseh zunanjih baz podatkov, strukturiranih datotek ali že obstoječih RDD-jev. Okvirji podatkov imajo vse lastnosti RDD, kot so nepremični, prožni, v pomnilniku, vendar imajo še dodatno strukturo in enostavno delo. API za podatkovni okvir je na voljo tudi v Scala, Python, R in Java.

3. Iskrivo pretakanje

Pretok podatkov je tehnika, pri kateri se obdeluje neprekinjen tok podatkov v realnem času. Za analizo potrebuje okvir, ki ponuja nizko zamudo. Spark Streaming zagotavlja to in tudi visoko prepustnost, napak, odporen in razširljiv API za obdelavo podatkov v realnem času. Povzeta je na Diskretiziranem toku (DStream), ki predstavlja tok podatkov, razdeljen na majhne serije. DStream je zasnovan na RDD, zato Spark Streaming brezhibno deluje z drugimi komponentami iskri. Nekateri najbolj opazni uporabniki Sparka.

Streaming so Netflix, Pinterest in Uber. Spark Streaming se lahko integrira z Apache Kafka, ki je platforma za ločevanje in pufer za vhodne tokove. Kafka deluje kot osrednje središče za tokove v realnem času, ki se obdelujejo z algoritmi v Spark Streaming.

4. Spark MLLib

Glavna privlačnost Sparka je množično povečati računanje in ta funkcija je najpomembnejša zahteva za vsak projekt strojnega učenja. Spark MLLib je komponenta strojnega učenja sistema Spark, ki vsebuje algoritme strojnega učenja, kot so klasifikacija, regresija, združevanje v skupine in skupno filtriranje. Ponuja tudi prostor za ekstrakcijo funkcij, zmanjšanje dimenzij, preoblikovanje itd.

Lahko tudi shranite svoje modele in jih zaženete na večjih naborih podatkov, ne da bi vam bilo treba skrbeti za težave s velikostjo. Vsebuje tudi pripomočke za linearno algebro, statistiko in obdelavo podatkov. Zaradi Sparkove obdelave v pomnilniku, odstopanja napak, razširljivosti in enostavnosti programiranja lahko s pomočjo te knjižnice enostavno zaženete iterativne algoritme ML.

5. GraphX

Graph Analytics v osnovi določa razmerja med predmeti v grafu, na primer najkrajša razdalja med dvema točkama. To pomaga optimizacija poti. API Spark GraphX ​​pomaga pri izračunavanju grafov in graf-paralel. Poenostavlja grafiko in omogoča hitrejšo in zanesljivejšo grafiko. Ena glavnih in dobro poznanih aplikacij grafične analitike je Google Maps.

Ugotovi razdaljo med dvema lokacijama in poda optimalen predlog poti. Drug primer so lahko predlogi prijateljev Facebooka. GraphX ​​deluje tako z grafi, kot tudi z izračuni. Spark ponuja vrsto algoritmov grafov, kot so razvrstitev strani, povezane komponente, širjenje nalepk, SVD ++, močno povezane komponente in število trikotnikov.

6. SparkR

R je najbolj razširjen statistični jezik, ki obsega več kot 10.000 paketov za različne namene. Uporabljal je API za podatkovne okvire, kar omogoča priročno delo in podatkovnim znanstvenikom omogoča tudi močne vizualizacije za temeljito analizo njihovih podatkov. Vendar R ne podpira vzporedne obdelave in je omejena na količino pomnilnika, ki je na voljo v enem stroju. Tu se pojavi SparkR.

Spark je razvil paket, znan kot SparkR, ki rešuje vprašanje skalabilnosti R. Temelji na porazdeljenih podatkovnih okvirih in ponuja isto sintakso kot R. Sparkov razdelilec Processing Engine in R-jeva neprimerljiva interaktivnost, paketi in vizualizacija združijo skupaj, da Data Znanstvenim omogočijo želijo za svoje analize.

Zaključek

Ker je Spark okvir splošne namene, se znajde v širokem območju uporabe. Spark se zaradi svoje zmogljivosti in zanesljivosti pogosto uporablja v večini aplikacij za velike podatke. Vse te komponente Spark se v vsaki novi izdaji posodabljajo z novimi funkcijami in olajšajo naše življenje.

Priporočeni članki

To je vodnik za komponente iskre. Tukaj razpravljamo o pregledu in top 6 komponentah iskre s podrobno razlago. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Najboljših 5 pomembnih možnosti panj
  2. Talend Open Studio komponente / orodja
  3. Najboljših 6 sestavnih delov IoT ekosistema
  4. Kaj je integracija podatkov Talend s prednostmi?

Kategorija: