从oracle导入数据 - java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver [英] spark importing data from oracle - java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
问题描述
使用AWS EMR上的spark从Oracle数据库读取数据时,
出现此错误消息:
While trying to read data from oracle database using spark on AWS EMR, I am getting this error message:
java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver。
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver.
有人可以告诉我有没有人遇到过这个问题,解决它?
Can someone let me know if anyone faced this issue and how they resolved it?
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()
推荐答案
在your_spark_home_path / conf / spark-defaults.conf中添加代码,'/ opt / modules / extraClass /'是dir,我在其中放置了额外的jar:
add codes below to your_spark_home_path/conf/spark-defaults.conf,'/opt/modules/extraClass/' is dir where i put extra jars:
spark.driver.extraClassPath = /opt/modules/extraClass/jodbc7.jar
spark.executor.extraClassPath = /opt/modules/extraClass/jodbc7.jar
或者您可以简单地将jodbc7.jar添加到your_spark_home_path / jars。
or you can simple add jodbc7.jar to your_spark_home_path/jars.
这篇关于从oracle导入数据 - java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!