spark-mongodb 库中的更新+推送支持?
update + push support in spark-mongodb library?
我想使用 spark 在 mongodb 现有文档的嵌入字段中插入一个新条目。
例子
Blog {
id:"001"
title:"This is a test blog",
content:"...."
comments:[{title:"comment1",content:".."},{title:"comment2",content:"..."}]
}
我想做什么
db.blogs.update({id:"001"}, {$push:{comments:{title:"commentX",content:".."}}});
目前可以在这个图书馆吗?如果没有,请你指点我正确的方向。
提前致谢
我能够使用 Casbah Library for Spark 完成我希望的操作-mongoDb。
import java.sql.Timestamp
import java.util.Date
import com.mongodb.casbah.MongoClient
import com.mongodb.casbah.commons.MongoDBObject
import com.mongodb.casbah.query.Imports._
object TestCasbah {
def main(args: Array[String]) {
val mongoClient = MongoClient("172.18.96.45", 27017)
val db = mongoClient("agentCallRecord")
val coll = db("CallDetails")
val query = MongoDBObject("agentId" -> "agent_1")
val callRatingMongoObject = MongoDBObject("audioId" -> 12351,"startTime" -> new Timestamp(new Date().getTime).toString, "endTime" -> new Timestamp(new Date().getTime).toString, "totalScore" -> 1, "sentiment" -> "NEGATIVE")
val update = $push("callRating" -> callRatingMongoObject)
coll.update(query, update)
}
}
我想使用 spark 在 mongodb 现有文档的嵌入字段中插入一个新条目。
例子
Blog {
id:"001"
title:"This is a test blog",
content:"...."
comments:[{title:"comment1",content:".."},{title:"comment2",content:"..."}]
}
我想做什么
db.blogs.update({id:"001"}, {$push:{comments:{title:"commentX",content:".."}}});
目前可以在这个图书馆吗?如果没有,请你指点我正确的方向。
提前致谢
我能够使用 Casbah Library for Spark 完成我希望的操作-mongoDb。
import java.sql.Timestamp
import java.util.Date
import com.mongodb.casbah.MongoClient
import com.mongodb.casbah.commons.MongoDBObject
import com.mongodb.casbah.query.Imports._
object TestCasbah {
def main(args: Array[String]) {
val mongoClient = MongoClient("172.18.96.45", 27017)
val db = mongoClient("agentCallRecord")
val coll = db("CallDetails")
val query = MongoDBObject("agentId" -> "agent_1")
val callRatingMongoObject = MongoDBObject("audioId" -> 12351,"startTime" -> new Timestamp(new Date().getTime).toString, "endTime" -> new Timestamp(new Date().getTime).toString, "totalScore" -> 1, "sentiment" -> "NEGATIVE")
val update = $push("callRating" -> callRatingMongoObject)
coll.update(query, update)
}
}