Ich verstehe nicht, warum mein Akku wurde nicht ordnungsgemäß von Spark aktualisiert.Spark: Akkumulatoren funktioniert nicht richtig, wenn ich es im Bereich
object AccumulatorsExample extends App {
val acc = sc.accumulator(0L, "acc")
sc range(0, 20000, step = 25) map { _ => acc += 1 } count()
assert(acc.value == 800) // not equals
}
My Spark-config:
setMaster("local[*]") // should use 8 cpu cores
Ich bin mir nicht sicher, ob Funken Berechnungen des Akkumulators verteilen auf jedem Kern und vielleicht das ist das Problem.
Meine Frage ist, wie kann ich alle acc
Werte in einer einzigen Summe aggregieren und den richtigen Akku-Wert (800) bekommen?
PS
Wenn ich Kern-Nummer setMaster("local[1]")
beschränken als alle gut funktioniert.
Was ist 'acc0'? Du arbeitest 'acc', ist das ein Tippfehler? –
Entschuldigung, ich meine 'acc'. – Aaron