Spark 交集操作示例 - 使用 SparkContext、parallelize、map、persist、intersection 和 collect
这段代码演示了如何在 Spark 中计算两个 RDD 的交集。代码首先创建了一个包含整数数据的列表 data。然后使用 sc.parallelize 方法将列表 data 转换为一个名为 dist 的 RDD,并将其分为 3 个分区。接下来,使用 dist.map 方法对 RDD dist 中的每个元素进行转换,将每个元素乘以 2,得到一个新的 RDD dist2。使用 dist2.persist 方法将 RDD dist2 标记为持久化,以便后续重复使用。最后,使用 dist.intersection 方法计算 RDD dist 和 RDD dist2 的交集,得到一个新的 RDD dist3,并使用 dist3.collect 方法将 RDD dist3 中的数据收集到 Driver 节点,并返回结果。
sc = SparkContext('spark://10.92.16.21:7077', 'app')
sc.setLogLevel('WARN')
data = [1, 2, 3, 4, 5, 6]
dist = sc.parallelize(data, 3)
dist2 = dist.map(lambda x: x * 2)
dist2.persist()
dist3 = dist.intersection(dist2)
dist3.collect()
以上代码的执行结果是计算 RDD dist 和 RDD dist2 的交集,然后将交集数据收集到 Driver 节点并返回。具体结果取决于集群中的资源分配和数据分区情况,无法确定具体的输出结果。
原文地址: https://www.cveoy.top/t/topic/o0wf 著作权归作者所有。请勿转载和采集!