RDD沿袭/ Spark操作员图的良好输出

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RDD沿袭/ Spark操作员图的良好输出相关的知识,希望对你有一定的参考价值。

我对用于教育目的的Spark RDD谱系或运算符图表的清晰表达感兴趣。我试过.toDebugString(),但我很难把它打印得很漂亮(包括换行等)。这里出了什么问题?

Using Python version 3.6.4 (default, Mar  1 2018 18:36:42)

SparkSession available as 'spark'.
>>> sc
<SparkContext master=local[*] appName=PySparkShell>
>>> rdd = sc.parallelize(range(10000))
>>> rdd.toDebugString()
b'(4) PythonRDD[1] at RDD at PythonRDD.scala:48 []
 |  ParallelCollectionRDD[0] at parallelize at PythonRDD.scala:175 []'
>>> print(rdd.toDebugString())
b'(4) PythonRDD[1] at RDD at PythonRDD.scala:48 []
 |  ParallelCollectionRDD[0] at parallelize at PythonRDD.scala:175 []'
>>> 

除了调试字符串之外,还有更好的方法可视化图形吗?

答案

但我很难把它打印得很漂亮

因为它是bytes对象。只是decode结果:

>>> print(rdd.toDebugString().decode("utf-8"))
(4) PythonRDD[1] at RDD at PythonRDD.scala:48 []
 |  ParallelCollectionRDD[0] at parallelize at PythonRDD.scala:489 []

还有更好的可视化图形的方法吗?

Spark UI中的DAG可视化通常绰绰有余。

以上是关于RDD沿袭/ Spark操作员图的良好输出的主要内容,如果未能解决你的问题,请参考以下文章

Spark RDD 沿袭和存储

spark系列之基本概念

何时创建 RDD 沿袭?如何找到谱系图?

RDD 沿袭缓存

为啥 RDD 不适合流式任务?

Spark——RDD算子