如何在Spark应用程序中逐步显示语句序列?

时间:2016-10-14 11:41:12

标签: apache-spark pyspark apache-spark-sql

我有一个带有pyspark.sql的Apache Spark数据加载和转换应用程序,在运行AttributeError或其他运行时异常之前运行半小时。

我想用一个小数据样本端到端地测试我的应用程序,比如Apache Pig的ILLUSTRATE。对数据进行抽样并没有多大帮助。有一种简单的方法可以做到这一点吗?

2 个答案:

答案 0 :(得分:2)

  • 转到您工作的Spark UI,您会在那里找到DAG Visualization。这是代表你工作的图表
  • 首先在示例使用示例上测试您的作业作为输入;)此外,您可以在本地运行spark,而不是在群集上运行,然后在您选择的IDE中调试它(如IDEA)

更多信息:

答案 1 :(得分:2)

这听起来像一个可以由regex101轻松处理的想法。它使您可以访问任何Spark应用程序的Web UI可能向您显示的所有底层细节。在驱动程序(即DAGSchedulerTaskSchedulerSchedulerBackend)和执行程序之间飞行的所有事件也会发布到已注册的SparkListeners。

Spark侦听器是SparkListener开发人员API的实现(它是SparkListenerInterface的扩展,其中所有回调方法都是no-op / do-nothing)。

Spark使用Spark侦听器进行Web UI,事件持久性(针对Spark History Server),执行程序和其他服务的动态分配。

您可以开发自己的自定义Spark侦听器,并使用SparkListener方法或spark.extraListeners设置进​​行注册。