2016-07-31 31 views
6

Mam bardzo długą pracę Sparka, z której obecnie nie ma wielu zadań. Czy istnieje sposób, aby zabić te zablokowane zadania z węzła sterownika?Zabij jedno zadanie iskrzenia

Z powodów związanych z uprawnieniami mogę się zalogować, ale nie mogę zabić zadań w węzłach podrzędnych, więc szukam sposobu, aby to zrobić z samego węzła sterownika. Zauważ, że nie chcę zabić całej pracy Sparka - tylko jednego lub dwóch wstrzymanych zadań.

Jeśli to pomaga, używam Mesos i mam dostęp do interfejsu internetowego, ale nie zawiera opcji zabicia zadania.

Odpowiedz

5

Nie, niezupełnie.

Nie można zabić pojedynczego iskry ręcznie, ale można użyć spekulacji iskry, aby automatycznie określić, które zadania trwają zbyt długo i ponownie je aktywować.

Jeśli chcesz to zrobić, należy ustawić spark.speculation true i [jeśli odważysz] modyfikować spark.speculation.interval, spark.speculation.multiplier, spark.speculation.quantile opcje konfiguracyjne.

Powiązane Docs: http://spark.apache.org/docs/latest/configuration.html#viewing-spark-properties

Powiązane SO: How to deal with tasks running too long (comparing to others in job) in yarn-client?

+0

Spark UI wydaje pozwalają zabić poszczególne zadania i myślę, że ponownie harmonogram i pracować następnym razem. Wydaje się to wskazywać, że istnieje interfejs API do zabijania zadań. Prawdopodobnie byłoby jednak dużo pracy ręcznej, aby go użyć. Cierpię z powodu tego samego problemu, a spekulacje powodują obecnie inne problemy, więc zastanawiam się nad wypróbowaniem tego. –

+1

Spark UI pozwala zabijać etapy prac, ale nie jestem świadomy żadnej funkcji zabijania poszczególnych zadań. Gdzie jest możliwe zabijanie zadań w interfejsie użytkownika? – Garren

+0

Masz rację, moje przeprosiny. Użyłem złego terminu i myślałem o etapach. –