首页 > 解决方案 > 什么是用于查找应用于特定 RDD 的操作的 spark 命令

问题描述

如果我的 RDD 值为:

val a = sc.parallelize(1 to 5)

在一些代码之后,如果我忘记了应用了哪些操作a,那么找到这些操作的命令是什么?

标签: apache-spark

解决方案


RDD.toDebugString将为您提供所需的信息:

val a = sc.parallelize(1 to 5)
println(a.toDebugString)

印刷

(4) ParallelCollectionRDD[0] at parallelize at Test.scala:31 []

您可以在此处找到有关如何解释调试字符串的更多信息。

调试字符串包含没有数据的 DAG。没有 Spark 功能可以“记录”包括数据在内的所有操作。如果需要保留数据,可以尝试使用AspectJ拦截 Spark API ,但这需要大量工作。


推荐阅读