2016-08-05 7 views
0

Ich schreibe gerade ein einfaches Spark-Skript, das die Funktion rdd.count() verwendet, und wenn ich es lokal laufe, funktioniert es großartig.Spark - Ist die integrierte Funktion rdd.count() in einem Cluster zuverlässig?

Funktioniert es weiterhin, wenn ich meinen Code in einem Cluster mit mehreren Computern implementiere oder ist diese Funktion anfällig für verteilte Berechnungsprobleme?

+2

Warum würden Sie denken, dass es nicht funktioniert? –

+0

Ich konnte nichts in der Dokumentation finden, was darauf hindeutet, dass es in diesem speziellen Fall funktionieren würde. Es gibt jedoch eine Menge Dokumentationen, die darauf hindeuten, dass Akkumulatoren benötigt werden, um Zählvorgänge zu synchronisieren, die auf verteilten Maschinen ausgeführt werden, so dass ich mich frage, ob ich diese verwenden sollte. –

+0

Dies ist der Zweck eines verteilten Frameworks: Es * muss * in einem Cluster mit mehreren Maschinen arbeiten. Dank der Fehlertoleranzarchitektur von Spark müssen Sie sich nicht darum kümmern, ob ein eingebauter Operator in einem fehlerbehafteten Cluster arbeitet oder nicht - er erledigt einfach seine Aufgabe. –

Antwort

0

Es ist wie eine MapReduce-Wordcount ... Es verteilt die Partitionen der Daten und summiert die Zahlen.

Also, um die Frage zu beantworten, sollte es in einer verteilten Umgebung akzeptabel gut funktionieren.