Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ed:lab_05 [2024/03/13 00:08] pszwed [Zbuduj obraz spark-jupyter] |
ed:lab_05 [2024/03/13 03:24] (current) pszwed [1.2 Zbuduj obraz spark-jupyter] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Laboratorium 5 ====== | + | ====== Laboratorium 5 ====== |
- | FIXME Strona w trakcie edycji | + | |
- | ===== Konfiguracja Dockera ===== | + | ===== 1. Konfiguracja Dockera ===== |
Naszym celem jest zbudowanie konfiguracji jak na rysunku: cztery kontenery połączone wspólną siecią | Naszym celem jest zbudowanie konfiguracji jak na rysunku: cztery kontenery połączone wspólną siecią | ||
Line 29: | Line 29: | ||
</ | </ | ||
+ | |||
+ | **Pobierz pliki konfiguracyjne i zbiór danych: {{ : | ||
==== Utwórz sieć spark-network ==== | ==== Utwórz sieć spark-network ==== | ||
Line 35: | Line 37: | ||
</ | </ | ||
- | ==== Zbuduj obraz spark-python ==== | + | ==== 1.1. Zbuduj obraz spark-python ==== |
Przejdź do katalogu '' | Przejdź do katalogu '' | ||
Line 67: | Line 69: | ||
- | ==== Zbuduj obraz spark-jupyter ==== | + | ==== 1.2 Zbuduj obraz spark-jupyter ==== |
Przejdź do katalogu '' | Przejdź do katalogu '' | ||
Line 102: | Line 104: | ||
</ | </ | ||
- | Obraz zawiera: | + | Obraz zawiera |
* bibliotekę pyspark | * bibliotekę pyspark | ||
* typowe biblioteki uczenia maszynowego (ale bez tensorflow) | * typowe biblioteki uczenia maszynowego (ale bez tensorflow) | ||
Line 108: | Line 110: | ||
* poandoc i instalację latexa (po załadowaniu notatnika możliwy jest wydruk w formacjie PDF z zawijaniem długich linii | * poandoc i instalację latexa (po załadowaniu notatnika możliwy jest wydruk w formacjie PDF z zawijaniem długich linii | ||
- | ==== Uruchomienie klastra ==== | + | Jak uruchomić - [[https:// |
+ | |||
+ | ==== 1.3 Uruchomienie klastra ==== | ||
W katalogu cluster powinien znaleźć się plik '' | W katalogu cluster powinien znaleźć się plik '' | ||
Line 191: | Line 195: | ||
* WorkerUI (worker-1) [[http:// | * WorkerUI (worker-1) [[http:// | ||
- | ==== Uruchomienie węzła spark-jupyter ==== | + | ==== 1.4 Uruchomienie węzła spark-jupyter ==== |
Kontener będzie uruchamiany za pomocą polecenia: | Kontener będzie uruchamiany za pomocą polecenia: | ||
Line 205: | Line 209: | ||
* W momencie uruchomienia wołany jest shell | * W momencie uruchomienia wołany jest shell | ||
- | ===== Java ===== | + | ===== 2 Java ===== |
- | ==== PiComputeApp ==== | + | ==== 2.1 PiComputeApp ==== |
**1.** Dodaj kod klasy do projektu i wprowadź odpowiednie wywołanie w funkcji '' | **1.** Dodaj kod klasy do projektu i wprowadź odpowiednie wywołanie w funkcji '' | ||
Line 295: | Line 299: | ||
**5.** Umieść w spawozdaniu fragmenty zrzutów ekranu pokazujące działanie wykonawcy Sparka (konsoli i DriverUI) | **5.** Umieść w spawozdaniu fragmenty zrzutów ekranu pokazujące działanie wykonawcy Sparka (konsoli i DriverUI) | ||
| | ||
- | ==== PiComputeAppDistributed ==== | + | ==== 2.2 PiComputeAppDistributed ==== |
**1.** Wprowadź minimalną zmianę w kodzie aplikacji. Różnicą jest wskazanie adresu węzła Master. | **1.** Wprowadź minimalną zmianę w kodzie aplikacji. Różnicą jest wskazanie adresu węzła Master. | ||
Line 314: | Line 318: | ||
**4.** Zamieść w spawozdaniu zrzuty WebUI węzłów Master i Worker(ów) wskazujących, | **4.** Zamieść w spawozdaniu zrzuty WebUI węzłów Master i Worker(ów) wskazujących, | ||
- | ==== LoadDistributedDataset ==== | + | ==== 2.3 LoadDistributedDataset ==== |
Załadujemy zbiór danych do Sparka. Musi być on dostępny dla węzłów | Załadujemy zbiór danych do Sparka. Musi być on dostępny dla węzłów | ||
Line 396: | Line 400: | ||
- | ===== PySpark + Jupyter ===== | + | ===== 3 PySpark + Jupyter ===== |
Spróbujemy powtórzyć te kroki w środowisku Jupyter korzystając z biblioteki PySpark. | Spróbujemy powtórzyć te kroki w środowisku Jupyter korzystając z biblioteki PySpark. | ||
Line 403: | Line 407: | ||
- | ==== Uruchomienie jupyter-lab ==== | + | ==== 3.1 Uruchomienie jupyter-lab ==== |
**1.** Uruchom obraz '' | **1.** Uruchom obraz '' | ||
+ | |||
+ | < | ||
+ | docker run -it --rm -v " | ||
+ | </ | ||
+ | |||
**2.** Wydaj polecenie | **2.** Wydaj polecenie | ||
Line 414: | Line 423: | ||
- | **3.** W przeglądarce otwórz | + | **3.** W przeglądarce otwórz |
Obraz '' | Obraz '' | ||
- | ==== Wyznaczanie liczby PI ==== | + | ==== 3.2 Wyznaczanie liczby PI ==== |
**1.** Utwórz notatnik '' | **1.** Utwórz notatnik '' | ||
Line 456: | Line 465: | ||
**2.** Możesz uruchamiać interaktywnie kolejne komórki i monitorować działanie aplikacji w WebUI. Do momentu jawnego zakończenia sesji, będzie ona aktywna. | **2.** Możesz uruchamiać interaktywnie kolejne komórki i monitorować działanie aplikacji w WebUI. Do momentu jawnego zakończenia sesji, będzie ona aktywna. | ||
- | ==== LoadEnergyDataset ==== | + | ==== 3.3 LoadEnergyDataset ==== |
**1.** Utwórz notatnik i wprowadź w nim kod: | **1.** Utwórz notatnik i wprowadź w nim kod: | ||
Line 601: | Line 610: | ||
</ | </ | ||
- | ==== TODO - regresja dla Chin ==== | + | ==== 3.4 TODO - regresja dla Chin ==== |
- | Przeprowadź | + | Przeprowadź |
- | Zapisz notatnik jako | + | **Zapisz notatnik jako PDF i prześlij razem ze sprawozdaniem** |