gpt4 book ai didi

scala - mapreduce Job()抛出了 'java.lang.IllegalStateException'异常。无法评估org.apache.hadoop.mapreduce.Job.toString()

转载 作者:行者123 更新时间:2023-12-02 21:25:08 29 4
gpt4 key购买 nike

我正在运行一个Spark Streaming程序,该程序使用mapreduce作业以AvroParquet格式写入文件。该程序在群集上执行时可以正常运行,但在本地执行失败。

编码

import org.apache.hadoop.mapreduce.Job
val job = Job.getInstance()

引发以下异常:
Method threw 'java.lang.IllegalStateException' exception. Cannot evaluate org.apache.hadoop.mapreduce.Job.toString()

这是用于提交 Spark 流作业的代码:
    SparkConf conf = new SparkConf(false)
.setMaster("local[2]")
.setAppName("test");
SparkContext sc = new SparkContext(conf);
MyClass job = new MyClass();
job.run();

class MyClass(){
protected def run(): Unit ={

val ssc: StreamingContext = createStreamingContext(parameters)
// here there is something like
// stream.map(func1).reduceBykey(func2).foreachRDD(rdd => {val job = Job.getInstance()})
ssc.start()
}

最佳答案

很有可能发生这种情况,因为它试图在作业提交之前调用toString。

与其手动创建Job实例,不如尝试使用spark-submit --class MyClass --master local [2] /path/to/yourjar.jar(Submitting spark applications)提交它

您的代码可能如下所示:

object MyClass {
def main(args: Array[String]): Unit ={
val conf = new SparkConf(false)
.setMaster("local[2]")
.setAppName("test");
val sc = new SparkContext(conf);

// do what you need
}

关于scala - mapreduce Job()抛出了 'java.lang.IllegalStateException'异常。无法评估org.apache.hadoop.mapreduce.Job.toString(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36312180/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com