Apache Spark – pierwsze początki

    2 komentarze

    Poradnik:

    Jak uruchomić na komputerze z MS Windows lokalną instancję Apache Sparka pracującą na jednym nodzie z gotową obsługą skryptów w Pythonie (pyspark) i przykładowymi zbiorami danych.

    Na podstawie materiałów ze strony
    http://semantica.cs.lth.se/pyspark/#/pyspark-vm

    Dla tych, którzy na co dzień korzystają ze stacji roboczej MS Windows.

    Potrzebne oprogramowanie
    a) Virtual Box ( wirtualizator)
    https://www.virtualbox.org/wiki/Downloads
    Instalujemy najwyższą wersję , jaką aktualnie obsługuje Vagrant
    GUI VirtualBoxa nie będzie wogóle wykorzystywane.

    b) Vagrant (nakładka na wirtualizator)

    https://www.vagrantup.com/downloads.html

    Instalujemy obraz

    To chwilę trwa, cierpliwości, obraz  ponad 1 GB objętości.

    Sprawdzamy zainstalowane obrazy maszyn wirtualnych.

    Sprawdzamy status maszyn

    Uruchamiamy maszynę wirtualną

    Jak wygląda plik VagrantFile, warto na niego spojrzeć, w szczególności na numery portów, które są forwardowane.

    Uwagi, które mogą zmniejszyć frustrację:

    Jeśli zainstalujemy zbyt nową wersję VirtualBoxa Vagrant jej nie wykryje, a co więcej będzie komunikować nas o braku HyperV.

    Co ciekawe na komputerach z windows 7 pro  instalacja tego typu oprogramowania jest możliwa, ale tej wersji nie testowałem,

    pozostajemy przy oprogramowaniu Virtualbox.

    Dla dociekliwych:

    https://www.altkomakademia.pl/baza-wiedzy/qna/discussion/2763/instalacja-hyper-v-manager-w-windows-7-
    Na stacjach z Windows 7 standardowo zainstalowany jest powershell w versji 2.0. Wykonanie polecenia Vagrant up nie kończy się. Należy zaktualizować framework np. do wersji 4.0.

    Wersja PowerShella przed:

    Po instalacji ze strony Microsoftu

    https://www.microsoft.com/en-us/download/details.aspx?id=40855

    Wersja powershella po:

    W wersji VirtualBox (5.1) domyślnie nie ma dostępu do sieci zewnętrznej od środka maszyny, przez co nie można zaktulizować jej oprogramowania. Pomaga poprawa w pliku konfiguracyjnym Vagrantfile

    Należy dodać w pliku Vagranfile dodatkowe linie kodu

    Pierwsze kroki

    1. Uruchomienie skryptu Pythona w notatniku Jupiter

    Uruchamiany stronę http://localhost:8081

    Jako silnik wybieramy pyspark

    W pierwszej komórce wpisujemy

    Wyjście
    Out[1]:

    W drugiej komórce

    Wyjście:
    Out[2]: pyspark.context.SparkContext

    Przykładowy wygląd notatnika

    Pyspark

    2. Aktualizujemy dostępne pliki z danymi

    Uruchamiamy stronę http://localhost:8082
    Naciskamy przycisk “Update all” i czekamy cierpliwie na aktualizację, jeden z plików ma ponad 2GB danych.
    Po aktualizacji wygląda to tak

    Datasets

     

     

    Dostęp do UI Sparka jest  pod adresem

    http://localhost:4040

    localhost_4040

    Dostęp przez SSH

     

    Dostęp do maszyny przez SSH jest na porcie 2222 interfejsu lokalnego.

    ssh_session_pyspark

     

    Z pliku private_key należy wygenerować klucz prywatny , który będzie mógł być użyty przez PuttySSH.

    U mnie plik znajduje się w podkatalogu, w którym zainstalowano  przez Vagranta  wirtualną maszynę:

    tak wygenerowany klucz prywatny należy wskazać na zakladce Connection/SSH/Auth.

    ssh_auth_pyspark

    Po uruchomieniu połączenia i akceptacji klucza logujemy  się na użytkownika vagrant  z pustym hasłem.

    ssh_auth_loginvagrant

     

    Po zakończeniu pracy wystarczy wyłączyć maszynę wirtualną

    Categories: Apache, Big Data, Python, Spark