spark从oracle导入数据java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDri公司

2024-10-01 13:36:35 发布

您现在位置:Python中文网/ 问答频道 /正文

当尝试使用AWS EMR上的spark从oracle数据库读取数据时, 我收到以下错误消息:

java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver.

有人能告诉我是否有人面临这个问题,他们是如何解决的?在

pyspark --driver-class-path /home/hadoop/ojdbc7.jar --jars   /home/hadoop/ojdbc7.jar

from pyspark import SparkContext, HiveContext, SparkConf

from pyspark.sql import SQLContext

sqlContext = SQLContext(sc)

df = sqlContext.read.format("jdbc").options(url="jdbc:oracle:thin:user/pass@//10.200.100.142:1521/BMD", driver = "oracle.jdbc.driver.OracleDriver", 
dbtable="S_0COORDER_TEXT_D").load()

Tags: fromimporthadoopawshomedriverpysparkjar
2条回答

虽然你没有提到你使用的是哪一个版本的spark。。。你可以试试下面。。。。在

将jar导入驱动程序和执行器。所以,您需要编辑conf/spark-defaults.conf在下面添加两行。在

spark.driver.extraClassPath /home/hadoop/ojdbc7.jar
spark.executor.extraClassPath /home/hadoop/ojdbc7.jar


您可以在提交作业时尝试通过,如下例所示:

^{pr2}$

将下面的代码添加到您的\u spark_home_path/conf/spark-默认值.conf,'/opt/modules/extraClass/'是我放置额外jar的目录:

spark.driver.extraClassPath = /opt/modules/extraClass/jodbc7.jar
spark.executor.extraClassPath = /opt/modules/extraClass/jodbc7.jar

或者您可以简单地将jodbc7.jar添加到您的\u spark_home_path/jar中。在

相关问题 更多 >