2016-08-05 70 views
2

Ich habe eine IBM BigInsights-Dienstinstanz mit einem Hadoop-Cluster mit 5 Knoten (einschließlich Apache Spark) erstellt. Ich versuche, SparkR zu verwenden, um eine Cloudant-Datenbank zu verbinden, einige Daten zu erhalten und etwas zu verarbeiten.java.lang.ClassNotFoundException: Die Datenquelle konnte nicht gefunden werden: com.cloudant.spark. Im IBM BigInsights-Cluster

ich einen SparkR Shell (Terminal) ins Leben gerufen und lief den folgenden Code:

sparkR.stop() 
# Creating SparkConext and connecting to Cloudant DB 
sc <- sparkR.init(sparkEnv = list("cloudant.host"="<<cloudant-host-name>>","<<><<cloudant-user-name>>>","cloudant.password"="<<cloudant-password>>", "jsonstore.rdd.schemaSampleSize"="-1")) 

# Database to be connected to extract the data 
database <- "testdata" 
# Creating Spark SQL Context 
sqlContext <- sparkRSQL.init(sc) 
# Creating DataFrame for the "testdata" Cloudant DB 
testDataDF <- read.df(sqlContext, database, header='true', source = "com.cloudant.spark",inferSchema='true') 

Ich erhalte die folgende Fehlermeldung:

16/08/05 19:00:27 ERROR RBackendHandler: loadDF on org.apache.spark.sql.api.r.SQLUtils failed 
Error in invokeJava(isStatic = TRUE, className, methodName, ...) : 
    java.lang.ClassNotFoundException: Failed to find data source: com.cloudant.spark. Please find packages at http://spark-packages.org 
     at org.apache.spark.sql.execution.datasources.ResolvedDataSource$.lookupDataSource(ResolvedDataSource.scala:77) 
     at org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:102) 
     at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:119) 
     at org.apache.spark.sql.api.r.SQLUtils$.loadDF(SQLUtils.scala:160) 
     at org.apache.spark.sql.api.r.SQLUtils.loadDF(SQLUtils.scala) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:498) 
     at org.apache.spark.api.r.RBackendHandler.handleMethodCall(RBackendHandler.scala:141) 
     at org.apache.spark.api.r.RBackendHandler.channelRead0(RBacke 

Wie Sie den Funken cloudant Anschluss installieren in IBM BigInsights und das Problem beheben? Jede Hilfe würde sehr geschätzt werden.

Antwort