Szukaj…


Wyjaśnienie trybu Spark Client i Cluster

Spójrzmy na różnice między trybem Spark i klastra Spark.

Klient : Podczas uruchamiania Spark w trybie klienta program SparkContext i sterownik działają na zewnątrz klastra; na przykład z laptopa. Tryb lokalny ma zastosowanie tylko w przypadku, gdy nie chcesz używać klastra, a zamiast tego chcesz uruchomić wszystko na jednym komputerze. Aplikacja sterownika i aplikacja Spark znajdują się na tym samym komputerze co użytkownik. Sterownik działa na dedykowanym serwerze (węźle głównym) w dedykowanym procesie. Oznacza to, że ma wszystkie dostępne zasoby do wykonania pracy. Ponieważ węzeł główny ma własne zasoby dedykowane, nie trzeba „wydawać” zasobów roboczych na program Driver. Jeśli proces sterownika umrze, potrzebujesz zewnętrznego systemu monitorowania, aby zresetować jego wykonanie.

Cluster: Driver działa na jednym z węzłów Workera klastra i działa jako dedykowany, samodzielny proces wewnątrz Workera. Podczas pracy w trybie klastrowym wszystkie pliki JAR związane z wykonaniem aplikacji muszą być publicznie dostępne dla wszystkich pracowników. Oznacza to, że możesz ręcznie umieścić je w miejscu udostępnionym lub w folderze dla każdego pracownika. Każda aplikacja ma własne procesy wykonujące, które pozostają aktywne przez cały czas trwania aplikacji i uruchamiają zadania w wielu wątkach. Ma to tę zaletę, że izoluje aplikacje od siebie, zarówno po stronie planowania (każdy sterownik planuje swoje własne zadania), jak i po stronie wykonującej (zadania z różnych aplikacji działają w różnych maszynach JVM

Typy Menedżera klastrów

Apache Mesos - ogólny menedżer klastra, który może również uruchamiać Hadoop MapReduce i obsługiwać aplikacje. Hadoop YARN - menedżer zasobów w Hadoop.
Kubernetes - infrastruktura zorientowana na kontenery. Jest jeszcze w fazie eksperymentalnej.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow