您可以使用unity JDBC 和MongoDB Java Driver
import mongodb.jdbc.MongoDriver
导入两个类SparkConf和SparkContext
import org.apache.spark.sql.{DataFrame, SQLContext}
只需使用您的MongoDB更换URL的MongoDB阅读网址。 dbtable,其中包含要为其创建数据框的表的名称。 替换您的db2数据库服务器的用户名和密码。
val url = "jdbc:mongo://ds045252.mlab.com:45252/samplemongodb"
val dbtable = "Photos"
val user = "charles2588"
val password = "*****"
val options = scala.collection.Map("url" -> url,"driver" -> "mongodb.jdbc.MongoDriver","dbtable" ->dbtable,"user"->user,"password"->password)
现在从已经DB2驱动程序加载
val sqlContext = new SQLContext(sc)
创建一个从您的SQLContext一个dataframereader为你的餐桌
val dataFrameReader = sqlContext.read.format("jdbc").options(options)
调用load方法来创建新的Spark环境中创建新SQLContext DataFrame用于您的表格。
val tableDataFrame = dataFrameReader.load()
呼叫show()方法来显示表的内容
tableDataFrame.show()
价: http://bigdataauthority.blogspot.com/2016/03/connecting-to-mongodb-from-ibm-bluemix.html
谢谢,
查尔斯。
嗨,我尝试以这种方式连接到mongodb时出现错误Auth失败。在添加选项“dbname” - >“admin”之后,我可以访问mongodb。但它带来了新的错误: 采样采集时出错:system.profile .....所以我在dataFrameReader中什么都没有。任何建议? –