A szikra alkatrészek áttekintése

Képzelje el, hogy 1000 feladata van kéznél, és nagyon kevés idő áll rendelkezésre mindegyik befejezéséhez. Valaki segítséget nyújt azáltal, hogy erőforrásokat biztosít, akik képesek levonni néhány feladatot a kezedről és elvégezni őket veled párhuzamosan, hogy minden feladat időben befejeződjön. Hogy valaki számítástechnikai értelemben a Szikra. Az Apache Spark egy nyílt forráskódú és elosztott fürtszámítási keretrendszer a Big Data számára, és optimalizált megközelítést biztosít a nagy adatsorok elemzéséhez. 100-szor gyorsabban működik, mint a Hadoop, és különböző könyvtárakat biztosít különböző célokra, például SQL műveletek végrehajtására, ML, streaming, gráf feldolgozásra stb. Az alábbiakban részletesebben látjuk a szikra különböző összetevőit.

A Spark legfontosabb alkotóelemei

Jelenleg a Spark Ökoszisztémában 6 alkatrészünk van: Spark Core, Spark SQL, Spark Streaming, Spark MLlib, Spark GraphX ​​és SparkR. Lássuk, mit végeznek ezek az összetevők mindegyike.

1. Szikramag

A Spark Core, ahogy a neve is sugallja, a Spark folyamat központi eleme. Gondoskodik a feladatok ütemezéséről, a hibajavításról, a memóriakezelésről és a bemeneti-kimeneti műveletekről stb. Gondolj valamire, mint a számítógép CPU-jára. Támogatja a programozási nyelveket, például a Java, a Scala, a Python és az R, valamint API-kat biztosít a megfelelő nyelvekhez, amelyekkel felépítheti ETL-feladatát vagy elvégezhet elemzést. A Spark összes többi alkatrészének saját API-ja van, amelyek a Spark Core tetejére épülnek. A párhuzamos feldolgozási képességek és a memóriában belüli számítások miatt a Spark bármilyen munkaterhelést képes kezelni.

A Spark Core az RDD (Resilient Distributed Dataset) elnevezésű különféle adatszerkezettel rendelkezik, amely az adatokat a fürt összes csomópontján elosztja. Az RDD-k egy Lazy értékelési paradigmán dolgoznak, ahol a számítást memorizálják, és csak akkor hajtják végre, amikor erre szükség van. Ez elősegíti a folyamat optimalizálását azáltal, hogy csak a szükséges objektumokat kiszámítja.

2. Spark SQL

Ha adatbázisokkal dolgozott, megérti az SQL fontosságát. Nem lenne rendkívül lenyűgöző, ha ugyanaz az SQL kód N-szer gyorsabban működik még egy nagyobb adatkészletnél is? A Spark SQL segít az SQL segítségével manipulálni a Spark adatait. Támogatja a JDBC és az ODBC kapcsolatokat, amelyek kapcsolatot létesítenek a Java objektumok és a meglévő adatbázisok, adattárházak és üzleti intelligencia eszközök között. A Spark magában foglal egy úgynevezett Dataframe-t, amely az adatok oszlopok és sorok formájában történő strukturált gyűjtése.

A Spark lehetővé teszi, hogy ezen adatokkal az SQL segítségével dolgozzon. Az adatkeretek egyenértékűek a relációs táblákkal, és bármilyen külső adatbázisból, strukturált fájlokból vagy a már meglévő RDD-kből összeállíthatók. Az adatkeretek az RDD minden tulajdonságával rendelkeznek, például változhatatlanok, rugalmasak, memóriájukban, de egy további jellemzőjük a felépítésük és a könnyű kezelhetőség. A Dataframe API szintén elérhető a Scala, Python, R és Java nyelven.

3. Spark streaming

Az adatátvitel olyan technika, amelyben a valós idejű adatok folyamatos adatfolyamát dolgozzák fel. Olyan keretet igényel, amely alacsony elemzési késleltetést kínál. A Spark Streaming ezt biztosítja, valamint egy nagy teljesítményű, hibatűrő és méretezhető API-t az adatok valós időben történő feldolgozásához. Kivonása a Discretized Stream-en (DStream) található, amely kis adagokra osztott adatfolyamot képvisel. A DStream az RDD-re épül, így a Spark Streaming zökkenőmentesen működik együtt más szikra alkatrészekkel. A Spark néhány legjelentősebb felhasználója.

A streaming a Netflix, a Pinterest és az Uber. A Spark Streaming integrálható az Apache Kafka-val, amely a bemeneti patakok leválasztására és pufferelésére szolgál. A Kafka központi csomópontként szolgál azon valós idejű folyamokhoz, amelyeket a Spark Streaming algoritmusok segítségével dolgoznak fel.

4. Spark MLLib

Spark fő vonzereje a számítás masszív méretezése, és ez a szolgáltatás a legfontosabb követelmény minden gépi tanulási projekt számára. A Spark MLLib a Spark gépi tanulási alkotóeleme, amely olyan gépi tanulási algoritmusokat tartalmaz, mint például osztályozás, regresszió, fürtözés és együttműködési szűrés. Helyet kínál a szolgáltatás kibontásához, a dimenzió csökkentéséhez, átalakításához stb.

A modelleket mentheti, és nagyobb adatkészleteken is futtathatja azokat anélkül, hogy aggódnia kellene a méretezési problémák miatt. Ezenkívül a lineáris algebra, a statisztika és az adatkezelés segédprogramjait is tartalmazza. A Spark memória közbeni feldolgozása, hibatűrő képessége, méretezhetősége és a programozás egyszerűsége miatt ennek a könyvtárnak a segítségével könnyedén iteratív ML algoritmusokat futtathat.

5. GraphX

A Graph Analytics alapvetően meghatározza az objektumok közötti kapcsolatokat egy gráfban, például a két pont közötti legrövidebb távolságot. Ez segít az útvonal optimalizálásában. A Spark GraphX ​​API segít a gráf és a gráf párhuzamos számításában. Egyszerűsíti a grafikon elemzést, gyorsabbá és megbízhatóbbá teszi. A grafikon elemzés egyik fő és jól ismert alkalmazása a Google Maps.

Megtudja a két hely közötti távolságot, és optimális útvonal-javaslatot ad. Egy másik példa a Facebook-barát javaslata. A GraphX ​​grafikonokkal és számításokkal egyaránt működik. A Spark grafikonalgoritmusok széles skáláját kínálja, például oldal rangsor, csatlakoztatott komponensek, címketerjesztés, SVD ++, szorosan összekapcsolt összetevők és háromszögek száma.

6. SparkR

Az R a legszélesebb körben alkalmazott statisztikai nyelv, amely több mint 10 000 csomagot tartalmaz különféle célokra. Adatkeretek API-t használt, amely kényelmesebbé teszi a munkát, és nagy teljesítményű vizualizációkat kínál az adattudósok számára az adatok alapos elemzése érdekében. Azonban R nem támogatja a párhuzamos feldolgozást, és az egyetlen gépen rendelkezésre álló memória mennyiségére korlátozódik. Itt jön a SparkR a képbe.

A Spark kifejlesztett egy SparkR néven ismert csomagot, amely megoldja az R skálázhatóság kérdését. Ez elosztott adatkeretekre épül, és ugyanolyan szintaxist biztosít, mint az R. Spark elosztott feldolgozó motorja és az R páratlan interaktivitása, csomagjai, megjelenítése együttesen adva az adattudósoknak azt, amit elemzéseikre vágynak.

Következtetés

Mivel a Spark egy általános célú keret, sokféle alkalmazásban találja magát. A Spark teljesítményének és megbízhatóságának köszönhetően széles körben használják a legtöbb nagy adat-alkalmazásban. A Spark mindegyik alkotóeleme minden új kiadásban új funkciókkal frissül, és könnyebbé teszi az életünket.

Ajánlott cikkek

Ez egy útmutató a Spark Components-hez. Itt részletesen ismertetjük a szikra áttekintését és a 6 legfontosabb összetevőt. A következő cikkeket is megnézheti további információkért -

  1. Az öt legfontosabb kaptár alternatíva
  2. Talend Open Studio összetevők / eszközök
  3. Az IoT ökoszisztéma 6 legfontosabb alkotóeleme
  4. Mi az a Talend adatintegráció az előnyökkel?

Kategória: