fürt mód áttekintése

ez a dokumentum rövid áttekintést ad arról, hogy a Spark hogyan működik a fürtökön, hogy megkönnyítse az érintett összetevők megértését. Olvassa el az alkalmazás benyújtási útmutatójáthogy megismerje az alkalmazások klaszteren történő elindítását.

a Spark alkalmazások független folyamatkészletként futnak egy fürtön, amelyet a főprogram SparkContext objektuma koordinál (az úgynevezett illesztőprogram-program).

pontosabban, a fürt futtatásához a SparkContext többféle fürtkezelőhöz csatlakozhat(akár a Spark saját önálló fürtkezelőjéhez, akár a Mesos-hoz vagy a YARN-hoz), amelyek erőforrásokat allokálnak az alkalmazások között. A csatlakozás után a Spark végrehajtókat szerez be a fürt csomópontjain, amelyek számításokat futtatnak és adatokat tárolnak az alkalmazás számára.Ezután elküldi az alkalmazás kódját (amelyet a SPARKCONTEXT-nek átadott jar vagy Python fájlok határoznak meg) a végrehajtóknak. Végül a SparkContext feladatokat küld a végrehajtóknak futtatásra.

számos hasznos dolgot kell megjegyezni erről az architektúráról:

  1. minden alkalmazás megkapja a saját végrehajtó folyamatait, amelyek a wholeapplication időtartamára fennmaradnak, és több szálon futtatják a feladatokat. Ennek az az előnye, hogy elkülöníti az alkalmazásokategymástól, mind az ütemezési oldalon (minden illesztőprogram ütemezi a saját feladatait), mind az executorside (a különböző alkalmazásokból származó feladatok különböző JVM-ekben futnak). Ez azonban azt is jelenti, hogyaz adatok nem oszthatók meg a különböző Spark alkalmazások (a SparkContext példányai) között anélkül, hogy külső tárolórendszerbe írnák őket.
  2. a Spark agnosztikus az alapul szolgáló klaszterkezelővel szemben. Mindaddig, amíg meg tudja szerezni az executorprocesseket, és ezek kommunikálnak egymással, viszonylag könnyű futtatni még az acluster manager-en is, amely más alkalmazásokat is támogat (pl. Mesos/YARN).
  3. az illesztőprogram-programnak egész életében figyelnie és fogadnia kell a végrehajtóktól érkező bejövő kapcsolatokat (pl.sofőr.port a hálózati konfigurációbanszakasz). Mint ilyen, az illesztőprogram programnak hálózatnak kell lenniea munkavállalói csomópontokból kezelhető.
  4. mivel az illesztőprogram ütemezi a fürtön lévő feladatokat, azt a workernodes közelében kell futtatni, lehetőleg ugyanazon a helyi hálózaton. Ha távolról szeretne kéréseket küldeni a clusternek, akkor jobb, ha megnyit egy RPC-t az illesztőprogramnak, és a közelben küldi el a műveleteket, mint ha az illesztőprogramot a dolgozó csomópontoktól távol futtatja.

Klaszterkezelő típusok

a rendszer jelenleg több klaszterkezelőt támogat:

  • önálló – egy egyszerű cluster manager tartalmazza Spark, amely megkönnyíti, hogy hozzanak létre egy fürt.
  • Apache Mesos – általános klaszterkezelő, amely Hadoop MapReduceand szolgáltatási alkalmazásokat is futtathat.
  • Hadoop fonal – az erőforrás-kezelő a Hadoop 2-ben.
  • Kubernetes – nyílt forráskódú rendszer a konténeres alkalmazások telepítésének, méretezésének és kezelésének automatizálására.

egy harmadik féltől származó projekt (amelyet a Spark projekt nem támogat) létezik a fornomad támogatásának klaszterkezelőként történő hozzáadásához.

Alkalmazások benyújtása

az alkalmazások bármilyen típusú klaszterbe benyújthatók a spark-submit szkript használatával.A jelentkezési útmutató leírja, hogyan kell ezt megtenni.

monitorozás

minden illesztőprogram-programnak van egy webes felhasználói felülete, jellemzően a 4040-es porton, amely információkat jelenít meg a futási feladatokról, a végrehajtókról és a tárhelyhasználatról. Egyszerűen menjen a egy webböngészőben, hogyelérje ezt a felhasználói felületet. A megfigyelési útmutató más megfigyelési lehetőségeket is ismertet.

Job Scheduling

a Spark lehetővé teszi az erőforrás-allokáció ellenőrzését mind az alkalmazások között (a clustermanager szintjén), mind az alkalmazásokon belül (ha több számítás történik ugyanazon a SparkContext-en).A feladatütemezés áttekintése ezt részletesebben leírja.

Szójegyzék

az alábbi táblázat összefoglalja a klaszterfogalmakra hivatkozó kifejezéseket:

kifejezés jelentése
alkalmazás felhasználói program épül Spark. Egy illesztőprogram-programból és a fürt végrehajtóiból áll.
Application jar a felhasználó Spark alkalmazását tartalmazó jar. Bizonyos esetekben a felhasználók létre akarnak hozni egy” uber jar ” – ot, amely tartalmazza az alkalmazásukat a függőségeivel együtt. A felhasználó jar soha nem tartalmazhat Hadoop vagy Spark könyvtárak, azonban, ezek hozzá futásidőben.
Driver program az alkalmazás fő () funkciójának futtatása és a SparkContext létrehozása
Klaszterkezelő külső szolgáltatás a klaszter erőforrásainak megszerzéséhez (pl. önálló menedzser, Mesos, fonal)
telepítési mód megkülönbözteti az illesztőprogram folyamatának helyét. “Fürt” módban a keretrendszer elindítja az illesztőprogramot a fürt belsejében. “Kliens” módban a beküldő elindítja az illesztőprogramot a fürtön kívül.
Worker node bármely csomópont, amely képes alkalmazáskódot futtatni a fürtben
Executor egy folyamat elindított egy alkalmazás egy worker csomópont, amely fut a feladatokat, és tárolja az adatokat a memóriában vagy lemez tároló rajtuk keresztül. Minden alkalmazásnak saját végrehajtói vannak.
feladat egy végrehajtónak elküldendő munkaegység
Job több feladatból álló párhuzamos számítás, amely egy Spark műveletre válaszul születik (pl. save, collect); látni fogja ezt a kifejezést a vezető naplóiban.
Stage minden feladat kisebb feladatcsoportokra oszlik, amelyeket szakaszoknak neveznek, amelyek egymástól függenek (hasonlóan a térképhez és a MapReduce szakaszainak csökkentéséhez); látni fogja ezt a kifejezést a vezető naplóiban.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.

Previous post igen, a Nintendo ROM-ok letöltése illegális (még akkor is, ha Ön a játék tulajdonosa)
Next post nicknotas