PySpark实战:glom操作

来自CloudWiki
跳转至: 导航搜索

介绍

glom操作是一个变换算子,

它将RDD中每一个分区中类型为T的元素转换成Array[T],这样每一个分区就只有一个数组元素。

代码

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([1, 2, 3, 4], 3)
print(rdd.collect())
ret = sorted(rdd.glom().collect())
#[[1], [2], [3, 4]]
print(ret)
##############################################
sc.stop()


输出

[1, 2, 3, 4]

[[1], [2], [3, 4]]