我正在使用以下设置
SparkConf conf = new SparkConf().setAppName("Network Utilization Data")
.setMaster ("spark://10.126.228.139:7077")
.set("spark.submit.deployMode","cluster")
.set("spark.executor.instances","8")
.set("spark.executor.cores","4")
.set("spark.executor.memory","5120M")
.set("spark.driver.memory","5120M")
.set("spark.driver.memoryOverhead","10000M")
.set("spark.scheduler.mode", "FAIR")
.set("spark.cores.max", "4");
我可以在spark集群环境中运行并行作业。但是每个作业的数据集结果都给出了错误的结果。如果我运行单个作业,数据集结果是正确的。
每个作业都在执行不同的逻辑和不同的数据源。
可能是什么问题?
如果我在下面运行单个作业,则是数据集结果。
如果我运行并行作业,数据集结果如下。额外值来自其他作业数据集值。
答案 0 :(得分:0)
我们需要小心数据集编写器。我的两个应用程序正在写入rf_table数据集。
ran_rf_dataset.write()模式(SaveMode.Append).saveAsTable(" rf_table&#34)。
这就是混合数据的原因。
现在我为每个要编写的应用程序分配了不同的数据集。那么数据还可以。