Potrzebuję użyć tego parametru, więc jak mogę uzyskać liczbę pracowników? Podobnie jak w Scala, mogę zadzwonić pod numer sc.getExecutorMemoryStatus
, aby uzyskać dostępną liczbę pracowników. Ale w PySpark wygląda na to, że nie ma żadnego API, aby uzyskać ten numer.Jak zdobyć liczbę pracowników (executorów) w PySpark?
Odpowiedz
W scala, getExecutorStorageStatus
i getExecutorMemoryStatus
zarówno zwracają liczbę executorów, w tym sterownik. jak poniżej Przykładowy fragment
/** Method that just returns the current active/registered executors
* excluding the driver.
* @param sc The spark context to retrieve registered executors.
* @return a list of executors each in the form of host:port.
*/
def currentActiveExecutors(sc: SparkContext): Seq[String] = {
val allExecutors = sc.getExecutorMemoryStatus.map(_._1)
val driverHost: String = sc.getConf.get("spark.driver.host")
allExecutors.filter(! _.split(":")(0).equals(driverHost)).toList
}
But In python api it was not implemented
@DanielDarabos answer potwierdza również.
Jednak nie jestem ekspertem od pyspark. Można spróbować równowartość rzeczą do tego pytona ...
sc.getConf.getInt("spark.executor.instances", 1)
Przepraszam za spóźnioną odpowiedź, ale w moim Pysparku pokazał "Obiekt SparkContext ma nie ma atrybutu getConf " –
Mam na myśli w tobie wypróbować w równoważnej składni Pythona. nie tak jak jest ... –
Myślę, że to jak ten logger.info (sparkContext.getConf.getAll.mkString ("\ n")) wydrukuje wszystkie parametry, z których można znaleźć liczbę executorów, a także –
- 1. Jak ustawić liczbę executorów Spark?
- 2. Jak ustawić maksymalną liczbę pracowników w paczce/matlabpool z konsoli?
- 3. Zalety Executorów nad nowym wątkiem
- 4. Apache Spark: ustawienie instancji executorów nie zmienia executorów
- 5. Jak zdobyć liczbę elementów w ObservableCollection z XAML?
- 6. Jak zdobyć liczbę zaktualizowanych zapisów w danych wiosennych jpa?
- 7. uwsgi: Co definiuje liczbę pracowników/procesów, których potrzebuje aplikacja django?
- 8. Jak ustawić spark.sql.parquet.output.committer.class w pyspark
- 9. Jak poprawnie uchwycić wyjątki RuntimeException z Executorów?
- 10. Seler, pracowników i AutoScaling
- 11. Jak zatrzymać starszych pracowników serwisowych?
- 12. Liczby losowe generowanie w PySpark
- 13. Jak znaleźć pracowników w mojej aplikacji Elixir?
- 14. Eksplodować w PySpark
- 15. filtrowanie Kolumna w PySpark
- 16. Jakie czynniki decydują o liczbie executorów w trybie samodzielnym?
- 17. Ograniczenie liczby pracowników w kolejce w Sidekiq
- 18. Obsługa wyjątków pracowników tła
- 19. Seler - programowo lista pracowników
- 20. Jak określić odpowiednią liczbę pracowników Puma i wątków do uruchomienia na dynamice Heroku Performance?
- 21. Rejestrowanie PySpark?
- 22. Jak korzystać z klasy Scala w Pyspark
- 23. Jak zmienić nazwy kolumn danych w pyspark?
- 24. Jak działa funkcja Pyspark mapPartitions?
- 25. jak uzyskać większe zaangażowanie ze strony pracowników?
- 26. Jak zdiagnozować pracowników selera, którzy wiszą
- 27. Jak ustawić default_url_options dla pracowników Sidekiq?
- 28. Jak uzyskać liczbę NSMutableDictionary w iphone?
- 29. Jak zdobyć liczbę satelitów używanych w systemie GPS w systemie Android?
- 30. Zapytanie HIVE stół w pyspark
Nie sądzę, kwestia ta jest kopią drugiego. Chciałbym wiedzieć, ile executorów stało się dostępnych dla kierowcy, nawet zanim jakiekolwiek rdds zostały stworzone, podczas pracy na Mesos. Bardzo denerwujące, ale skończyłem analizować pandy: pd df = pd.read_html ("http: // localhost: 4040/executors") [1] len (df [df ['Executor ID']! = 'driver']) – MarkNS
Szybka odpowiedź, aby uzyskać liczbę rdzeni: sc._jsc.sc(). getExecutorMemoryStatus(). size() – OronNavon