Apache spark 从Pyspark EMR访问AWS RDS
我正在尝试使用EMR中的Pyspark访问RDS中的一些表 我曾尝试在/usr/share/java中安装JDBC驱动程序,但看起来spark没有安装这些驱动程序Apache spark 从Pyspark EMR访问AWS RDS,apache-spark,jdbc,pyspark,amazon-rds,amazon-emr,Apache Spark,Jdbc,Pyspark,Amazon Rds,Amazon Emr,我正在尝试使用EMR中的Pyspark访问RDS中的一些表 我曾尝试在/usr/share/java中安装JDBC驱动程序,但看起来spark没有安装这些驱动程序 from pyspark.sql import SparkSession jdbc_url = "jdbc:mysql://{0}:{1}/{2}".format(hostname, jdbcPort, dbname) hostname = "rds_host" jdbcPort = 3306 dbname = 'demo' use
from pyspark.sql import SparkSession
jdbc_url = "jdbc:mysql://{0}:{1}/{2}".format(hostname, jdbcPort, dbname)
hostname = "rds_host"
jdbcPort = 3306
dbname = 'demo'
username = 'user'
password = 'pass'
table = "demo_table"
connectionProperties = {
"user" : "user",
"password" : "pass"
}
my_df = spark.read.jdbc(url=jdbc_url, table='SRC_CONNECTION', properties= connectionProperties)
my_df.show()
ERROR:
py4j.protocol.Py4JJavaError: An error occurred while calling o66.jdbc.
: java.sql.SQLException: No suitable driver`
在初始化pysparkshell时添加
mysql连接器java-*.jar
- 对于,使用
参数--驱动程序类路径
- 在connectionProperties中添加驱动程序:“com.mysql.jdbc.driver”