首页 > 解决方案 > 一些 Spark 作业没有初始化,也没有从 Spark 写入操作中取回控制权

问题描述

我一直在使用 Spark 3.1.1 和 Java 驱动程序,并为我的数据维护 spark Cache 并创建了视图。进行以下转换。

  1. 从视图中查询数据
  2. 对一些数据进行 MySQL 查询。
  3. 对 DataSet1 和 DataSet2 执行并集
  4. 执行 RegexTokenizer、StopWordsRemover 转换。
  5. 对从 StopWordsRemover 转换的单词使用爆炸功能。
  6. 对单词爆炸执行分组并使用小型广播数据集进行连接操作。
  7. 执行写入操作。

在这里,我没有从写入操作中获得控制权。在 Spark UI 和 Spark 驱动程序侦听器中,我可以看到直到 RegexTokenizer、StopWordsRemover 转换的作业和任务。对于剩余的转换,不会创建任何作业,也不会重新获得控制权。

如果我在进行第 4 次转换之前执行 DataSet3.cache(),则不会观察到任何问题。

请帮助我理解为什么没有创建火花作业并且在第一种情况下没有获得控制权。

标签: apache-sparkapache-spark-sqlspark-javaspark-ui

解决方案


推荐阅读