开发者社区> 问答> 正文

以json / text格式的Apache Spark DAG可视化

社区小助手 2018-12-05 14:02:28 380

我正在考虑优化一些相当大的Apache Spark作业,并观察到DAG可视化对于特定阶段来说非常复杂。

我无法理解外向箭头的位置,各种交叉点和猜测/假设是为了理解它。

这是我可以下载DAG的text / json格式的方式,使用vim / text编辑器更容易分析吗?

JSON 分布式计算 数据可视化 Apache 开发工具 Spark 数据格式
分享到
取消 提交回答
全部回答(2)
  • tama_test
    2019-07-17 23:18:20

    可以转换成节点-连接形式的JSON数据,然后使用dagre-d3来可视化展示。这样可视化后就能看出问题了。

    0 0
  • 社区小助手
    2019-07-17 23:18:20

    使用.explain运算符,它将逻辑和(启用扩展标志)物理计划打印到控制台。

    val records = spark.
    readStream.
    format("rate").
    load

    scala> records.explain

    == Physical Plan ==
    StreamingRelation rate, [timestamp#0, value#1L]

    scala> records.explain(extended = true)

    == Parsed Logical Plan ==
    StreamingRelation DataSource(org.apache.spark.sql.SparkSession@4071aa13,rate,List(),None,List(),None,Map(),None), rate, [timestamp#0, value#1L]

    == Analyzed Logical Plan ==
    timestamp: timestamp, value: bigint
    StreamingRelation DataSource(org.apache.spark.sql.SparkSession@4071aa13,rate,List(),None,List(),None,Map(),None), rate, [timestamp#0, value#1L]

    == Optimized Logical Plan ==
    StreamingRelation DataSource(org.apache.spark.sql.SparkSession@4071aa13,rate,List(),None,List(),None,Map(),None), rate, [timestamp#0, value#1L]

    == Physical Plan ==
    StreamingRelation rate, [timestamp#0, value#1L]
    物理计划是DAG的转换,因此它可以帮助您。

    这个链接可能会有所帮助:

    https://jaceklaskowski.gitbooks.io/spark-structured-streaming/spark-sql-streaming-Dataset-explain.html

    0 0
添加回答
+ 订阅

大数据计算实践乐园,近距离学习前沿技术

推荐文章
相似问题