Apache Spark

Inštalácia Apache Spark na Ubuntu 17.10

Inštalácia Apache Spark na Ubuntu 17.10

Apache Spark je nástroj na analýzu údajov, ktorý možno použiť na spracovanie údajov z HDFS, S3 alebo iných zdrojov údajov v pamäti. V tomto príspevku nainštalujeme Apache Spark na Ubuntu 17.10 stroj.

Verzia Ubuntu

V tejto príručke budeme používať Ubuntu verzie 17.10 (GNU / Linux 4.13.0-38-generický x86_64).

Apache Spark je súčasťou ekosystému Hadoop pre veľké dáta. Skúste nainštalovať Apache Hadoop a vytvorte s ním ukážkovú aplikáciu.

Aktualizácia existujúcich balíkov

Na spustenie inštalácie pre Spark je potrebné, aby sme náš stroj aktualizovali o najnovšie dostupné softvérové ​​balíčky. Môžeme to urobiť pomocou:

sudo apt-get update && sudo apt-get -y dist-upgrade

Pretože Spark je založený na Jave, musíme si ho nainštalovať na náš stroj. Môžeme použiť ktorúkoľvek verziu Java nad Java 6. Tu budeme používať Java 8:

sudo apt-get -y nainštalovať openjdk-8-jdk-headless

Sťahujú sa súbory Spark

Na našom stroji teraz existujú všetky potrebné balíčky. Sme pripravení stiahnuť požadované súbory Spark TAR, aby sme ich mohli začať nastavovať a spustiť ukážkový program aj so Sparkom.

V tejto príručke budeme inštalovať Spark v2.3.0 k dispozícii tu:

Stránka na stiahnutie Spark

Stiahnite si príslušné súbory pomocou tohto príkazu:

wget http: // www-us.apache.org / dist / spark / spark-2.3.0 / iskra-2.3.0-bin-hadoop2.7.tgz

V závislosti od rýchlosti siete to môže trvať až niekoľko minút, pretože veľkosť súboru je veľká:

Sťahuje sa Apache Spark

Teraz, keď máme stiahnutý súbor TAR, môžeme rozbaliť aktuálny adresár:

tar xvzf spark-2.3.0-bin-hadoop2.7.tgz

Bude to trvať niekoľko sekúnd, pretože archív má veľkú veľkosť:

Archivované súbory v aplikácii Spark

Pokiaľ ide o budúcu aktualizáciu Apache Spark, môže to spôsobiť problémy v dôsledku aktualizácií cesty. Týmto problémom sa dá vyhnúť vytvorením mäkkého odkazu na Spark. Spustením tohto príkazu vytvoríte mäkký odkaz:

ln -s iskra-2.3.0-bin-hadoop2.7 iskra

Pridanie Spark na cestu

Aby sme mohli vykonávať Spark skripty, pridáme ich teraz na cestu. Ak to chcete urobiť, otvorte súbor bashrc:

vi ~ /.bashrc

Pridajte tieto riadky na koniec súboru .súbor bashrc, aby táto cesta mohla obsahovať cestu k spustiteľnému súboru Spark:

SPARK_HOME = / LinuxHint / spark
export PATH = $ SPARK_HOME / bin: $ PATH

Teraz súbor vyzerá takto:

Pridanie Spark na PATH

Ak chcete aktivovať tieto zmeny, spustite nasledujúci príkaz pre súbor bashrc:

zdroj ~ /.bashrc

Spúšťam Spark Shell

Teraz, keď sme priamo mimo adresára iskier, spustite nasledujúci príkaz na otvorenie shellu apark:

./ spark / bin / spark-shell

Uvidíme, že shell Spark je teraz otvorený:

Spúšťam shell Spark

Na konzole vidíme, že Spark otvoril aj webovú konzolu na porte 404. Poďme to navštíviť:

Webová konzola Apache Spark

Aj keď budeme pracovať na samotnej konzole, webové prostredie je dôležitým miestom, na ktoré sa treba pozerať, keď vykonávate ťažké úlohy Spark Job, aby ste vedeli, čo sa deje v každej úlohe Spark Job, ktorú vykonávate.

Skontrolujte verziu shellu Spark jednoduchým príkazom:

sc.verzia

Vrátime niečo ako:

res0: Reťazec = 2.3.0

Vytvorenie ukážky aplikácie Spark v programe Scala

Teraz urobíme ukážkovú aplikáciu Word Counter s Apache Spark. Ak to chcete urobiť, najskôr načítajte textový súbor do kontextu Spark v prostredí Spark:

scala> var Data = sc.textFile ("/ root / LinuxHint / spark / README.md ")
Údaje: org.apache.iskra.rdd.RDD [Reťazec] = / root / LinuxHint / spark / README.md MapPartitionsRDD [1] v súbore textFile o: 24
scala>

Teraz musí byť text v súbore rozdelený na tokeny, ktoré môže Spark spravovať:

scala> var tokens = Údaje.flatMap (s => s.split (""))
tokeny: org.apache.iskra.rdd.RDD [String] = MapPartitionsRDD [2] na plochej mape o: 25
scala>

Teraz inicializujte počet pre každé slovo na 1:

scala> var tokens_1 = tokeny.mapa (s => (s, 1))
tokens_1: org.apache.iskra.rdd.RDD [(String, Int)] = MapPartitionsRDD [3] na mape o: 25
scala>

Nakoniec vypočítajte frekvenciu každého slova v súbore:

var sum_each = tokeny_1.reduceByKey ((a, b) => a + b)

Je čas pozrieť sa na výstup programu. Zbierajte žetóny a ich príslušné počty:

scala> sum_each.zbierať ()
res1: Array [(String, Int)] = Array ((balíček, 1), (pre, 3), (programy, 1), (spracovanie.,1), (Pretože, 1), (The, 1), (stránka) (http: // spark.apache.org / dokumentácia.html).,1), (zhluk.,1), (its, 1), ([run, 1), (than, 1), (APIs, 1), (have, 1), (Try, 1), (computation, 1), (through, 1 ), (niekoľko, 1), (Táto, 2), (graf, 1), (Úľ, 2), (úložisko, 1), ([„Špecifikácia, 1), (K, 2), („ priadza “) , 1), (Raz, 1), ([„Užitočné, 1), (radšej, 1), (SparkPi, 2), (engine, 1), (verzia, 1), (súbor, 1), (dokumentácia ,, 1), (spracovanie ,, 1), (the, 24), (are, 1), (systems.,1), (parametre, 1), (nie, 1), (odlišné, 1), (odkazovať, 2), (Interaktívne, 2), (R ,, 1), (dané.,1), (ak, 4), (zostavenie, 4), (keď, 1), (byť, 2), (testy, 1), (Apache, 1), (vlákno, 1), (programy ,, 1 ), (vrátane, 4), (./ bin / run-example, 2), (Spark.,1), (balík.,1), (1 000).count (), 1), (Verzie, 1), (HDFS, 1), (D ..
scala>

Vynikajúci! Boli sme schopní spustiť jednoduchý príklad počítadla slov pomocou programovacieho jazyka Scala s textovým súborom, ktorý už bol v systéme prítomný.

Záver

V tejto lekcii sme sa pozreli na to, ako môžeme nainštalovať a začať používať Apache Spark na Ubuntu 17.10 stroj a tiež na ňom spustite ukážkovú aplikáciu.

Prečítajte si viac príspevkov založených na Ubuntu tu.

Ako zmeniť ľavé a pravé tlačidlo myši na počítači so systémom Windows 10
Je úplnou normou, že všetky zariadenia počítačových myší sú ergonomicky navrhnuté pre pravákov. Existujú však dostupné myšacie zariadenia, ktoré sú šp...
Napodobňovanie kliknutí myšou vznášaním sa pomocou myši bez myši vo Windows 10
Používanie myši alebo klávesnice v nesprávnom postoji k nadmernému používaniu môže mať za následok veľa zdravotných problémov vrátane napätia, syndróm...
Pridajte gestá myši do systému Windows 10 pomocou týchto bezplatných nástrojov
V posledných rokoch sa počítače a operačné systémy veľmi vyvinuli. Boli časy, keď používatelia museli prechádzať správcami súborov pomocou príkazov. R...