Johdatus Apache Spark -arkkitehtuuriin

Tässä artikkelissa määritellään Apache Spark -arkkitehtuurin ja sen komponenttien käsitteet. Sitä pidetään huipputason tietojenkäsittelynä Apache Software Foundation -sivustolla. Kipinää pidetään viime kädessä yhtenä mahdollisuutena Hadoopille ja Map Reduce -sovelluksille.

Spark on avoimen lähdekoodin arkkitehtuuri, jossa on hyvin määritellyt komponentit, jotka auttavat analysoimaan suurta määrää dataa ja toimii hajautetussa laskennassa. Spark on kirjoitettu Scala -sovelluksella ominaisuuksilla, kuten API, R, ja siinä on rikastettu kirjastokokonaisuus, joka helpottaa tietojenkäsittelyä. Apache Sparkilla on omat klusterin laskennansa nopeaa saavutettavuutta varten ja suoritetaan eri alustoilla.

Apache Sparkilla on laaja valikoima ominaisuuksia, kuten nopeampi nopeampi muistiprosessi, mukautuva useisiin ohjelmointikieliin, se on parantanut välimuistimenetelmiä ja tukee SQL-kyselyitä, koneoppimista. Se toimii alustoilla, kuten Microsoft Windows ja Linux-käyttöjärjestelmät. Heidän käyttöönotonsa mukaan he voivat toimia myös yhdessä koneessa ja klusteritilassa.

Apache Spark -arkkitehtuuri

Apache-kipinän arkkitehtuurissa on löysästi kytkettyjä komponentteja. Spark pohtii päällikön / työntekijän prosessia arkkitehtuurissa ja kaikki tehtävät toimivat Hadoopin hajautetun tiedostojärjestelmän päällä. Apache-kipinä käyttää Hadoopia tietojenkäsittely- ja tallennusprosesseihin. Niitä pidetään muistin tietojenkäsittelymoottorina, ja ne tekevät sovelluksistaan ​​toimimaan Hadoop-klusterissa nopeammin kuin muisti. Muistin sisäinen käsittely estää levyn I / O-virheiden vikaantumisen. Spark antaa heterogeenisen työn työskennellä samoilla tiedoilla. Spark jakaa tietosi osioihin, jaettujen osioiden koko riippuu annetusta tietolähteestä.

Alla on kaksi Apache Spark -arkkitehtuurin pääasiallista toteutusta:

1. Joustavat jaetut tietoaineistot (RDD)

Se vastaa API: n tarjoamisesta välimuistin ja osioiden hallitsemiseksi. Se on tärkeä työkalupakki tietojen laskemiseen. Se auttaa elementtien uudelleenlaskennassa vikojen yhteydessä ja sitä pidetään muuttumattomana datana ja toimii rajapintana. Transformaatiot ja toiminnot ovat RDD: n kaksi operaatiota.

2. Ohjattu asyklinen kuvaaja (DAG)

Se muodostaa sekvenssiyhteyden solmusta toiseen. Ohjain muuntaa ohjelman DAG: ksi jokaisesta työstä. Apache Spark Eco -järjestelmässä on erilaisia ​​komponentteja, kuten API-ydin, Spark SQL, Suoratoisto ja reaaliaikainen prosessointi, MLIB ja Graph X. Jotkut täällä opittavaa terminologiaa on Spark-kuori, joka auttaa lukemaan suuria tietomääriä, Spark-konteksti - peruuta, suorita työ, tehtävä (työ), työ (laskenta)

Apache Spark -arkkitehtuurin komponentit

Sparkin neljä pääkomponenttia on esitetty alla, ja on välttämätöntä ymmärtää ne koko kehystä varten.

  1. Spark Driver
  2. toimeenpanijoiden
  3. Klusterin johtaja
  4. Työntekijän solmut

Seuraava kaavio näyttää kipinän arkkitehtuurin ja komponentit:

Kuva: Apache Spark Architecture -sovelluksen itsenäinen tila

Suoritusvuosi alkaa seuraavasti:

1. Spark Driver

Kuljettajan vastuulla on koordinoida tehtävät ja työntekijät johtamista varten. Se on Application JVM -prosessi, jota pidetään isäntäsolmuna. Kuljettaja jakaa kipinän tehtäviin ja aikatauluihin suorittamiseksi klustereissa oleville suorittajille. Kaaviossa kuljettajaohjelmat kutsuvat pääsovelluksen ja luovat kipinäkontekstin (toimii yhdyskäytävänä) seuraamaan yhdessä työtä annetussa klusterissa ja muodostamaan yhteyden Spark-klusteriin. Kaikki toiminnot ja komennot tehdään kipinäkontekstin kautta.

Spark-konteksti on merkintä jokaiselle istunnolle. Spark-ohjaimessa on enemmän komponentteja töiden suorittamiseksi klusterissa. Spark-klusterit yhdistetään erityyppisiin klusterien hallintaan ja samanaikaisesti konteksti hankkii työntekijöiden solmut tietojen suorittamiseksi ja tallentamiseksi. Ryhmässä, kun suoritamme prosessin, heidän työnsä on jaoteltu vaiheisiin lisäysvaiheiden kanssa ajoitettuihin tehtäviin.

2. Suorittaja

Se vastaa työn suorittamisesta ja tallentaa tietoja välimuistiin. Alkuvaiheessa toimeenpanijat rekisteröivät kuljettajien kanssa. Tällä suorittajalla on useita aikavälejä sovelluksen ajamiseksi samanaikaisesti. Työntekijät suorittavat luku- / kirjoitusprosessin ulkoisissa lähteissä. Suorittaja suorittaa työn, kun se on ladannut tietoja ja ne on poistettu lepotilassa. Suorittaja on aktivoitu dynaamisella allokoinnilla, ja heitä sisällytetään jatkuvasti ja poistetaan kestosta riippuen. Tehtävien suorittamisen aikana ohjaimia seurataan suorittajia. Suorittimet suorittavat käyttäjien tehtävät Java-prosessissa.

3. Cluster Manager

Se auttaa hallitsemaan klustereita, joissa on yksi isäntä ja määrä orjia. Ryhmähallintaohjelmia on kahta tyyppiä, kuten YARN ja itsenäinen. Molempia näitä hallinnoivat Resurssienhallinta ja Solmu. klusterityö itsenäisesti vaatii Spark Masterin ja työntekijän solmun heidän roolikseen. Klusterin johtajan vastuulla on resurssien allokointi ja tehtävän suorittaminen,

4. Työntekijän solmut

Ne ovat orjasolmuja; päävastuu tehtävien suorittamisesta ja niiden tulos palautetaan takaisin kipinäkontekstiin. He kommunikoivat isäntäsolmun kanssa resurssien saatavuudesta. Spark-konteksti suorittaa sen ja antaa työntekijän solmuille. Jokaiselle työntekijän solmulle on osoitettu yksi kipinätyöntekijä seurantaa varten. He tekevät laskennan yksinkertaisesti lisäämällä työntekijäsolmuja (1 - n ei työntekijöitä) siten, että kaikki tehtävät suoritetaan samanaikaisesti jakamalla työ osioihin useissa järjestelmissä. Toisen elementtitehtävän katsotaan olevan työyksikkö, ja se osoitetaan yhdelle suorittajalle, jokaiselle osion kipinälle suoritetaan yksi tehtävä.

johtopäätös

Siksi, ymmärtämällä Apache Spark -arkkitehtuuria, se merkitsee kuinka iso data voidaan toteuttaa helposti. Viime kädessä olemme oppineet heidän saavutettavuutensa ja niiden komponenttiroolit, mikä on erittäin hyödyllistä klusterien laskennassa ja isossa tietotekniikassa. Spark-laskee halutut tulokset helpommalla tavalla ja suositellaan eräkäsittelyssä.

Sparkin erityispiirteet, kuten tietoaineistot ja tietokehykset, auttavat optimoimaan käyttäjän koodin. Tärkeä ominaisuus, kuten SQL-moottori, edistää suorituskykyä ja tekee ohjelmistosta monipuolisen. Siksi olemme nähneet, että kipinäsovellukset toimivat paikallisesti tai jakautuvat klusteriin. Apache Sparkin katsotaan olevan erinomainen lisäosa monilla aloilla, kuten iso data. Yhteenvetona voidaan todeta, että kipinä auttaa ratkaisemaan korkeat laskennalliset tehtävät.

Suositellut artikkelit

Tämä on opas Apache Spark -arkkitehtuuriin. Tässä keskustellaan johdannosta Apache Spark -arkkitehtuuriin yhdessä komponenttien kanssa ja Apache Sparkin lohkokaaviona. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -

  1. Spark Shell -komennot
  2. Apache Hadoopin ekosysteemi
  3. Big Data -arkkitehtuuri
  4. Mikä on Apache

Luokka: