[005][Apache Spark](1)

Apache Spark to system obliczeń klastrowych typu open source, którego celem jest szybkie analizowanie danych – zarówno szybkie uruchamianie, jak i szybkie pisanie. Aby szybciej uruchamiać programy, Spark oferuje ogólny model wykonywania, który może optymalizować dowolne wykresy operatorów, i obsługuje obliczenia w pamięci, co pozwala wyszukiwać dane szybciej niż silniki oparte na dyskach, takie jak hadoop. Spark nie jest powiązany z dwustopniowym paradygmatem mapreduce i obiecuje wydajność do 100 razy szybszą niż Hadoop MapReduce. Spark zapewnia operacje podstawowe dla obliczeń klastrowych w pamięci, które umożliwiają programom użytkownika ładowanie danych do pamięci klastra i wielokrotne sprawdzanie ich, co czyni dobrze nadającym się do algorytmu uczenia się maszyny. Aby przyspieszyć programowanie, Spark zapewnia czyste, zwięzłe interfejsy API w językach scala, java i python. Możesz także używać Spark interaktywnie z powłok Scala i Pythona, aby szybko wyszukiwać duże zestawy danych. Spark działa na przędzy, mesosie, autonomicznie lub w chmurze. Może uzyskać dostęp do różnych źródeł danych, w tym hdfs, cassandra, hbase i amazon-s3.

PYTANIE:

 Rozwój lokalny dla Apache Spark

Zastanawiam się, jak inni programiści konfigurują lokalne środowiska do pracy nad projektami Spark. Czy konfigurujesz klaster „lokalny” za pomocą narzędzia takiego jak Vagrant? A może SSH najczęściej występuje w środowisku chmurowym, takim jak klaster w AWS? Być może istnieje wiele zadań, w których klaster z jednym węzłem jest odpowiedni i może być uruchamiany lokalnie łatwiej.

ODPOWIEDŹ:

Spark ma być skierowany na duże rozproszone zestawy danych, więc jak sugerujesz, najbardziej typowe przypadki użycia będą wymagać połączenia z jakimś systemem chmurowym, takim jak AWS. W rzeczywistości, jeśli zestaw danych, który chcesz przeanalizować, może zmieścić się w twoim systemie lokalnym, zwykle zauważysz, że możesz go przeanalizować równie prosto, używając czystego pytona. Jeśli próbujesz wykorzystać serię lokalnych maszyn wirtualnych, dość szybko zabraknie pamięci, a zadania albo się nie powiodą, albo się zatrzymają. To powiedziawszy, lokalna instancja iskry jest bardzo przydatna do celów rozwoju. Jednym ze sposobów, który według mnie działa, jest to, że jeśli mam katalog w HDFS z wieloma plikami, przeciągnę jeden plik, opracuję lokalnie, a następnie prześlę mój skrypt Spark do mojego systemu w chmurze w celu wykonania. Jeśli korzystasz z AWS, jest to naprawdę pomocne w unikaniu dużych opłat podczas rozwoju

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *