首页 文章

如何使用Spark&Scala将数据写入CouchBase?

提问于
浏览
1

我是CouchBase的新手 . 我正在尝试以本地模式将数据写入CouchBase . 我的示例代码如下,

val cfg = new SparkConf()
.setAppName("couchbaseQuickstart")
.setMaster("local[*]")
.set("com.couchbase.bucket.MyBucket","pwd") 

    val sc = new SparkContext(cfg)
    val doc1 = JsonDocument.create("doc1", JsonObject.create().put("some","content"))
    val doc2 = JsonArrayDocument.create("doc2", JsonArray.from("more", "content", "in", "here"))
    val data = sc.parallelize(Seq(doc1, doc2))

但我无法访问data.saveToCouchbase() .

我正在使用Spark 1.6.1和Scala 2.11.8

我在built.sbt中给出了以下依赖项

libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.6.1"
libraryDependencies += "com.couchbase.client" % "spark-connector_2.11" % "1.2.1"

如何使用Spark&Scala将数据写入CouchBase?

1 回答

  • 0

    看起来您只是缺少一个导入语句,它将使您能够在RDD和数据帧上使用Couchbase函数:

    import com.couchbase.spark._
    
    val cfg = new SparkConf()
    .setAppName("couchbaseQuickstart")
    .setMaster("local[*]")
    .set("com.couchbase.bucket.MyBucket","pwd") 
    
    val sc = new SparkContext(cfg)
    val doc1 = JsonDocument.create("doc1", 
    
    JsonObject.create().put("some","content"))
    val doc2 = JsonArrayDocument.create("doc2", JsonArray.from("more", "content", "in", "here"))
    
    val data = sc.parallelize(Seq(doc1, doc2))
    
    data.saveToCouchbase()
    

相关问题