获取" AssertionError("未知的应用程序类型")"何时连接到DSE 5.1.0 Spark

时间:2017-04-27 12:51:22

标签: apache-spark datastax datastax-enterprise

我使用这个连接到DSE(Spark):

new SparkConf()
  .setAppName(name)
  .setMaster("spark://localhost:7077")

DSE 5.0.8工作正常(Spark 1.6.3),但现在失败,DSE 5.1.0收到此错误:

java.lang.AssertionError: Unknown application type
at org.apache.spark.deploy.master.DseSparkMaster.registerApplication(DseSparkMaster.scala:88) ~[dse-spark-5.1.0.jar:2.0.2.6]

检查使用火花罐后,我想出了这个:

if(rpcendpointref instanceof DseAppProxy)

在spark中,似乎是RpcEndpointRef(NettyRpcEndpointRef)。

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

我有一个类似的问题,并通过以下方式修复它: https://docs.datastax.com/en/dse/5.1/dse-dev/datastax_enterprise/spark/sparkRemoteCommands.html

然后你需要使用dse spark-submit来运行你的工作,而不指定任何主人。

答案 1 :(得分:0)

我找到了解决方案。

首先,我认为在DSE 5.1中的应用程序中运行Spark作业是不可能的。必须与dse spark-submit

一起发送

一旦发送,它就能完美运行。为了与作业进行通信,我使用了Apache Kafka。

如果您不想使用作业,可以随时返回Apache Spark。