Pregled komponenti svjećica

Zamislite da imate 1000 zadataka pri ruci i vrlo malo vremena da ih završite. Netko vam nudi pomoć pružajući resurse koji mogu uzeti neke zadatke iz vaše ruke i obavljati ih paralelno s vama, tako da svi zadaci budu izvršeni na vrijeme. Da je netko Spark za tebe u računarskom smislu. Apache Spark je računalni okvir otvorenog i distribuiranog klastera za velike podatke i pruža optimizirani pristup za obavljanje analitike na velikim skupovima podataka. Djeluje 100 puta brže od Hadoopa i pruža različite biblioteke u različite svrhe poput izvođenja SQL operacija, ML, Streaming, Grafička obrada itd. Ispod ćemo detaljno vidjeti različite komponente iskra.

Glavne komponente iskre

Trenutno u Spark Ekosustavu imamo 6 komponenti koje su Spark Core, Spark SQL, Spark Streaming, Spark MLlib, Spark GraphX ​​i SparkR. Pogledajmo što svaka od ovih komponenti radi.

1. Spark Core

Spark Core je, kao što i ime sugerira, temeljna jedinica Spark procesa. Vodi brigu o rasporedu zadataka, oporavku grešaka, upravljanju memorijom i ulazno-izlaznim operacijama itd. Zamislite to kao nešto slično CPU-u s računalom. Podržava programske jezike kao što su Java, Scala, Python i R i pruža API za odgovarajuće jezike pomoću kojih možete graditi ETL posao ili raditi analitiku. Sve ostale komponente Sparka imaju svoje API-je koji su izgrađeni na vrhu Spark Core-a. Zbog svojih mogućnosti paralelne obrade i izračunavanja memorije, Spark može podnijeti bilo koju vrstu posla.

Spark Core dolazi s posebnom vrstom strukture podataka nazvanom RDD (Resilient Distributed Dataset) koja distribuira podatke po svim čvorovima unutar klastera. RDD-ovi rade na paradigmi Lazy evaluacije u kojoj se izračun pamti i izvodi samo kad je to potrebno. To pomaže u optimizaciji procesa računanjem samo potrebnih objekata.

2. Iskrijte SQL

Ako ste surađivali s Bazama podataka, shvatili ste važnost SQL-a. Ne bi li bilo iznimno neodoljivo ako isti SQL kôd radi N puta brže čak i na većem skupu podataka? Spark SQL pomaže vam manipulirati podacima na Sparku koristeći SQL. Podržava JDBC i ODBC veze koje uspostavljaju vezu između Java objekata i postojećih baza podataka, skladišta podataka i alata poslovne inteligencije. Spark uključuje nešto što se naziva Dataframes (Strukture podataka) koje su strukturirano skupljanje podataka u obliku stupaca i redaka.

Spark vam omogućuje rad na ovim podacima sa SQL-om. Okviri podataka ekvivalentni su relacijskim tablicama i mogu se konstruirati iz bilo koje vanjske baze podataka, strukturiranih datoteka ili već postojećih RDD-ova. Okviri podataka imaju sve značajke RDD-a kao što su nepromjenjiva, otporna, memorija, ali s dodatnom značajkom su strukturirani i s njima je lako raditi. API za podatkovni okvir dostupan je i u Scala, Python, R i Java.

3. Iskrivanje struje

Streaming podataka je tehnika gdje se obrađuje kontinuirani tok podataka u stvarnom vremenu. Potreban je okvir koji nudi nisku latenciju za analizu. Sparking streaming pruža to, a također visoku propusnost, otpornost na greške i skalabilan API za obradu podataka u stvarnom vremenu. Abstrahiran je na Diskretiziranom toku (DStream) koji predstavlja niz podataka podijeljenih u male serije. DStream je izgrađen na RDD-u, zbog čega Spark Streaming neometano radi s ostalim komponentama iskre. Neki od najistaknutijih korisnika Sparka.

Streaming su Netflix, Pinterest i Uber. Streaming streaming može se integrirati s Apache Kafka koja je platforma za odvajanje i pufer za ulazne tokove. Kafka djeluje kao središnje središte za tokove u stvarnom vremenu koji se obrađuju pomoću algoritama u Spark Streamingu.

4. Iskrivi MLLib

Spark-ova glavna atrakcija je masovno povećavanje računanja, a ovo je svojstvo najvažniji zahtjev za svaki projekt strojnog učenja. Spark MLLib je komponenta strojnog učenja Spark koja sadrži algoritme strojnog učenja, kao što su klasifikacija, regresija, grupiranje i kolaborativno filtriranje. Također nudi mjesto za izdvajanje značajki, smanjenje dimenzija, transformaciju itd.

Također možete spremiti svoje modele i pokretati ih na većim setovima podataka bez brige o problemima s veličinom. Sadrži i uslužne programe za linearnu algebru, statistiku i rukovanje podacima. Zbog Sparkove obrade memorije, tolerancije grešaka, skalabilnosti i jednostavnosti programiranja uz pomoć ove knjižnice možete lako pokrenuti iterativne ML algoritme.

5. GraphX

Grafička analitika u osnovi određuje odnose između objekata na grafikonu, na primjer, najkraća udaljenost između dviju točaka. To pomaže u optimizaciji ruta. Spark GraphX ​​API pomaže u izračunavanju grafova i paralelnih grafova. Pojednostavljuje analizu grafova i čini je bržom i pouzdanijom. Jedna od glavnih i dobro poznatih aplikacija analitike grafova je Google Maps.

Otkriva udaljenost između dviju lokacija i daje optimalan prijedlog rute. Drugi primjer mogu biti prijedlozi prijatelja Facebooka. GraphX ​​radi i s grafikonima i s računanjem. Spark nudi niz algoritama grafikona poput ranga stranice, povezanih komponenata, širenja naljepnica, SVD ++, snažno povezanih komponenti i broja trokuta.

6. SparkR

R je najrašireniji statistički jezik koji sadrži više od 10 000 paketa u različite svrhe. Koristio je API okvire podataka što ga čini prikladnim za rad i također pruža moćne vizualizacije za znanstvenike podataka da temeljito analiziraju svoje podatke. Međutim, R ne podržava paralelnu obradu i ograničena je na količinu memorije dostupne u jednom stroju. Ovdje SparkR ulazi u sliku.

Spark je razvio paket poznat kao SparkR koji rješava pitanje skalabilnosti R. Temelji se na distribuiranim okvirima podataka i također nudi istu sintaksu kao R. Sparkin distribuirani procesor i R neusporedivu interaktivnost, paketi i vizualizacija kombiniraju se kako bi dali znanstvenicima podataka ono žele za svoje analize.

Zaključak

Budući da je Spark okvir opće namjene, našao se u širokom rasponu primjena. Spark se široko koristi u većini velikih podataka zbog svojih performansi i pouzdanosti. Sve ove komponente Sparka u svakom se novom izdanju ažuriraju s novim značajkama i čine nam život lakšim.

Preporučeni članci

Ovo je vodič za svjećaste komponente. Ovdje ćemo detaljno objasniti pregled i prvih 6 komponenti iskre. Možete pogledati i sljedeće članke da biste saznali više -

  1. Top 5 važnijih mogućnosti košnice
  2. Talend Komponente / Alati za Open Studio
  3. Top 6 komponenti IoT ekosustava
  4. Što je integracija podataka Talend s prednostima?

Kategorija: