开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

DataWorks中我们提交的spark程序中,中间结果show出来,但日志中没有,是咋回事?

DataWorks中我们提交的spark程序中,中间结果show出来,但日志中没有,是咋回事?

展开
收起
真的很搞笑 2023-06-04 17:33:32 143 0
2 条回答
写回答
取消 提交回答
  • 在DataWorks中,当您提交Spark作业时,您可以通过在Spark代码中使用collect()或show()函数来查看中间结果。这些函数将DataFrame转换为Scala Seq或Java ArrayList,并返回一个数组。这个数组可以手动打印或在UI中查看,但不会自动记录到日志中。

    要在日志中查看中间结果,您需要在代码中添加一些额外的代码,以便将结果写入日志文件中。一种常见的方法是使用log()函数将结果打印到日志中。例如,您可以在代码中使用以下命令将结果写入名为"my_log.txt"的文件中:

    scala import org.apache.spark.sql.SparkSession

    val spark = SparkSession.builder.appName("MyApp").getOrCreate()

    val df = Seq((1, "a"), (2, "b"), (3, "c")).toDF("id", "name")

    df.show() // 显示中间结果

    val logSession = spark.stop() // 将日志信息写入日志文件中

    logSession.close() 这个例子演示了如何将日志信息写入日志文件中。在logSession.close()方法调用之前,所有日志信息都会被记录下来。这样,您就可以在DataWorks的日志文件中查看Spark程序的中间结果了。

    2023-06-04 18:57:00
    赞同 展开评论 打赏
  • spark任务实际应该是执行在集群上 调度资源组是将作业下发到引擎 所以一般看不到,此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-06-04 17:44:50
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 相关电子书

    更多
    DataWorks调度任务迁移最佳实践-2020飞天大数据平台实战应用第一季 立即下载
    DataWorks商业化资源组省钱秘籍-2020飞天大数据平台实战应用第一季 立即下载
    基于DataWorks数据服务构建疫情大屏-2020飞天大数据平台实战应用第一季 立即下载