PySpark实战:foreach操作

来自CloudWiki
跳转至: 导航搜索

介绍

foreach操作是一个变换算子,

它的作用是对RDD每个元素按照func定义的逻辑进行处理。

代码

import findspark
findspark.init()
##############################################
from pyspark.sql import SparkSession
spark = SparkSession.builder \
        .master("local[1]") \
        .appName("RDD Demo") \
        .getOrCreate();
sc = spark.sparkContext
#############################################
rdd = sc.parallelize([("a", 1), ("b", 2), ("a", 3),("b", 5)])
def f(x):
        # ('a', 1)
        # ('b', 2)
        # ('a', 3)
        # ('b', 5)
        print(x)
rdd.foreach(f)
#None
#############################################
sc.stop()

  • 对rdd的每个元素应用f函数

输出

('a', 1)

('b', 2)

('a', 3)

('b', 5)