2016-07-22 95 views
0
I am getting the following error while connecting Cloudant DB from my local Spark cluster(PySpark) using spark-cloudant connector. 

    The spark-cloudant connector is: https://spark-packages.org/package/cloudant-labs/spark-cloudant 

    I am started my PySpark with following command, 
    pyspark2.cmd --jars "all jars for spark-cloudant connector" 

The code I am using, 
sqlContextNew = SQLContext(sc) 
booksDataDF = sqlContextNew.read.format("com.cloudant.spark").option("cloudant.host","AAA-HOST").option("cloudant.username", "BBB-USERNAME"). option("cloudant.password","CCC-PASSWORD").load("booksdata") 

的错误信息是: 16/07/22 23时01分51秒INFO JsonStoreDataAccess:重用SparkEnv ActorSystem因为它包含喷雾 16/07/22 23时01分52秒ERROR ActorSystemImpl:从螺纹未捕获的致命错误[sparkDriverActorSystem-akka.actor.default-调度-2]关停ActorSystem [sparkDriverActorSystem] java.lang.ExceptionInInitializerError错误而从我的本地火花簇(PySpark)连接Cloudant DB使用火花cloudant连接器

引起:java.lang.NoSuchMethodError:scala.Predef $ ArrowAssoc $ .extension $$ minus $ greater(Ljava/lang/Object; Ljava/lang/Object;)Lscala/Tuple2 at org.parboiled.scala.Parser $ class.rule(Parser.scala:73) at org.parboiled.scala.Parser $ class.rule(Parser.scala:46) at spray.http.parser.HttpParser $ .rule(HttpParser.scala:29) at spray.http.parser.CORSHeaders $ class。$ timesAccess $ minusControl $ minusMax $ minusAge(CORSHeaders.scala:59) at spray.http.parser.HttpParser $。$ timesAccess $ minusControl $ minusMax $ minusAge(HttpParser.scala:29)

回答

0

我怀疑这个错误是因为错误的Scala版本。什么是您正在使用的Scala版本?对于火花和火星云,你需要Scala 2.10。

+0

嗨@Mayya Sharipova,我使用的Spark版本是spark-1.6.0-bin-hadoop2.6(Scala 2.10)。 spark-cloudant连接器的版本是spark-cloudant-1.6.2-s_2.10.jar。我想知道发生了什么,让我知道你是否有其他要点检查。我会尝试相同的。感谢您的更新。 –

+0

@PariMargu计算机上安装了什么是Scala版本? –

+0

Hi @Mayya Sharipova,斯卡拉版本2.10.5安装在我的电脑中。 –