Est groupByKey toujours préféré sur reduceByKey

J'ai toujours utiliser reduceByKey quand j'en ai besoin pour regrouper les données en Rdd, car il effectue un coté carte de réduire avant de mélanger les données, ce qui signifie souvent que moins de données sont bousculés et j'ai ainsi obtenir de meilleures performances. Même lorsque la carte côté fonction de réduction rassemble toutes les valeurs et n'a pas réellement de réduire la quantité de données, j'utilise encore reduceByKey, parce que je suis en supposant que le rendement de reduceByKey ne sera jamais pire que groupByKey. Cependant, je me demandais si cette hypothèse est correcte, ou si il y a en effet des situations où groupByKey devraient être privilégiées??

À partir des réponses que j'ai obtenu ci-dessous (et merci pour ces), @eliasah dit que groupByKey est juste la syntaxe de sucre alors que @climbage pense que reduceByKey peut-être un peu plus lent si je l'utilise pour reproduire groupByKey fonctionnalité. Je pense que je vais effectivement essayer de tester les deux fonctions sur quelques exemples 🙂
stackoverflow.com/questions/30825936/...
La seule fois où j'ai eu besoin d'utiliser groupByKey est pour les calculs sur des échantillons de données qui dépendent de la valeur précédente. Un précalculées total en cours d'exécution, en sont un exemple. La distance GPS. Etc.

OriginalL'auteur Glennie Helles Sindholt | 2015-10-19