Повторное использование одного и того же сеанса Spark вызывает несколько активных стадий - PullRequest
0 голосов
/ 12 декабря 2018

У нас есть большой набор данных, состоящий из нескольких миллионов записей, а затем обрабатывающий подмножество в последовательности преобразований и действий искр.Каждое подмножество проходит через один и тот же набор преобразований и действий.Первый шаг - получить данные и сохранить их в памяти, затем выполнить несколько операций, а затем очистить кэш.Это повторяется почти 2000 раз.После того, как это повторилось 200-300 раз, мы наблюдаем, что число активных стадий почти 3000 и продолжает расти.Мы ожидаем, что с каждым Unpersist соответствующие этапы должны исчезнуть, но все же этапы останутся.

В поисках решения для минимизации активных этапов, чтобы задания могли быть выполнены.В настоящее время мы не можем обработать его до конца из-за растущих активных стадий.

Logic is somewhat as below:
SubRoutine1:
Received a listOfCustomer
Build a dataframe for the listOfCustomer based on certain common condition/criteria.
cache the dataframe

SubRoutine2:
Received listOfCustomer
For each customer from listOfCustomer:
    Get the cached dataframe
    apply few transformations and actions for this customer on this dataframe
    save the final result in some datastore
    if (customerIndex % 200 = 0) then refresh cache by calling SubRoutine1 again
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...