在将Ssh放入EMR之后运行spark-shell时,我已经安装了postgresql驱动程序软件包spark-shell --packages org.postgresql:postgresql:9.4-1206-jdbc42
。然后,我导入org.postgresql。我想创建一个Spark Dataframe对象,所以我尝试从s3实例访问一个表。
sqlContext.load("jdbc", Map("url" -> "jdbc:postgresql://pathto.table.region.rds.amazonaws.com:5432/table?user=username&password=password","dbtable" -> "table"))
这给我一个java.sql.SQLException: No suitable driver
错误。
我已经看着这类似的问题的问题。但是我希望能够通过spark-shell运行驱动程序。
如果我没记错的话(很抱歉,我现在没有计算机可以测试它),则需要在选项图中明确设置驱动程序类。
sqlContext.load("jdbc",
Map("driver" -> "org.postgresql.Driver",
"url" -> "jdbc:postgresql://pathto.table.region.rds.amazonaws.com:5432/table?user=username&password=password",
"dbtable" -> "table"))
PS:我正在用手机写这个答案,请原谅我的错字。但我认为您明白了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句