Akumulatory to zmienne, które są „dodawane” tylko poprzez operację asocjacyjną i dlatego mogą być efektywnie obsługiwane równolegle. Można ich użyć do implementacji liczników (jak w MapReduce) lub sum. Spark natywnie obsługuje akumulatory typów numerycznych, a programiści mogą dodać obsługę nowych typów.
Dlaczego używamy akumulatora?
Akumulatory hydrauliczne są używane w wielu branżach do magazynowania energii; utrzymywać ciśnienie; tłumić wibracje, pulsacje i wstrząsy; i wiele więcej. Przechowywanie energii - akumulatory mogą przyjmować, magazynować i uwalniać energię w postaci płynu pod ciśnieniem, aby poprawić wydajność układu hydraulicznego.
Jaka jest różnica między transmisją a akumulatorem w Spark?
Kluczową różnicą między zmienną rozgłaszania a akumulatorem jest to, że chociaż zmienna rozgłaszana jest tylko do odczytu, akumulator może zostać dodany. … Każdy węzeł roboczy może uzyskać dostęp i dodawać tylko do swojej własnej wartości akumulatora lokalnego, a tylko program sterownika może uzyskać dostęp do wartości globalnej.
Jak działa akumulator Spark?
Akumulatory to zmienne, które są używane do agregowania informacji pomiędzy executorami. Na przykład informacje te mogą dotyczyć diagnozy danych lub interfejsu API, na przykład liczby uszkodzonych rekordów lub liczby wywołań określonego interfejsu API biblioteki.
Dlaczego zmienna akumulatorowa w Spark nie powinna być używana przez proces roboczy do operacji transformacji?
Akumulator poda błędne dane wyjściowe. Jeśli zadanie działa wolno, Spark może uruchomić kopię spekulacyjną tego zadania w innym węźle. Werdykt: Nie rozpatrywane. Akumulator da złe wyjście.