Hol den Maximalwert für jeden Schlüssel in einem Spark-RDD

Was ist der beste Weg, um die maximale Zeile (Wert) zurückzugeben, die jedem eindeutigen Schlüssel in einer Funken-RDD zugeordnet ist?

Ich benutze Python und habe es mit Math max versucht, indem ich es mit Schlüsseln und Aggregaten abbilde und reduziere. Gibt es eine effiziente Möglichkeit, dies zu tun? Möglicherweise eine UDF?

Ich habe im RDD-Format:

[(v, 3),
 (v, 1),
 (v, 1),
 (w, 7),
 (w, 1),
 (x, 3),
 (y, 1),
 (y, 1),
 (y, 2),
 (y, 3)]

Und ich muss zurückkehren:

[(v, 3),
 (w, 7),
 (x, 3),
 (y, 3)]

Ties kann den ersten Wert oder einen zufälligen Wert zurückgeben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage