ReduceBykey et Collect
L'une des transformations de RDD de paires les plus populaires est reduceByKey()
, qui opère sur des paires clé-valeur (k,v) et fusionne les valeurs de chaque clé. Dans cet exercice, vous allez d'abord créer un RDD de paires à partir d'une liste de tuples, puis combiner les valeurs avec la même clé, et enfin afficher (print) le résultat.
Rappelez-vous qu'un SparkContext sc
se trouve déjà dans votre espace de travail.
Cet exercice fait partie du cours
Principes fondamentaux des mégadonnées avec PySpark
Instructions
- Créez un RDD de paires nommé
Rdd
avec les tuples(1,2)
,(3,4)
,(3,6)
,(4,5)
. - Transformez le
Rdd
avecreduceByKey()
en un RDD de pairesRdd_Reduced
en ajoutant les valeurs avec la même clé. - Collectez le contenu du RDD de paires
Rdd_Reduced
et itérez pour afficher la sortie.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Create PairRDD Rdd with key value pairs
Rdd = sc.parallelize([____])
# Apply reduceByKey() operation on Rdd
Rdd_Reduced = Rdd.reduceByKey(lambda x, y: ____)
# Iterate over the result and print the output
for num in Rdd_Reduced.____:
print("Key {} has {} Counts".format(____, num[1]))