sparkを使用してOracleデータベースからテーブルをインポートしようとしていますが、ここではScalaを使用してテーブルをインポートしています。 私のJDBCドライバがojdbc7.jarであり、それは私が正常にテーブルをインポートすることができSparkエグゼキュータが「java.lang.ClassNotFoundException:oracle.jdbc.OracleDriver」エラーをスローしています
spark.driver.extraClassPath :/usr/lib/hadoop-lzo/lib/*:/usr/lib/hadoop/hadoop-aws.jar:/usr/share/aws/aws-java-sdk/*:/usr/share/aws/emr/emrfs/conf:/usr/s hare/aws/emr/emrfs/lib/*:/usr/share/aws/emr/emrfs/auxlib/*:/usr/share/aws/emr/security/conf:/usr/share/aws/emr/security/lib/*:/home/hadoop/ojdbc7.jar spark.driver.extraLibraryPath /usr/lib/hadoop/lib/native:/usr/lib/hadoop-lzo/lib/native spark.executor.extraClassPath :/usr/lib/hadoop-lzo/lib/*:/usr/lib/hadoop/hadoop-aws.jar:/usr/share/aws/aws-java-sdk/*:/usr/share/aws/emr/emrfs/conf:/usr/s hare/aws/emr/emrfs/lib/*:/usr/share/aws/emr/emrfs/auxlib/*:/usr/share/aws/emr/security/conf:/usr/share/aws/emr/security/lib/*:/home/hadoop/ojdbc7.jar spark.executor.extraLibraryPath /usr/lib/hadoop/lib/native:/usr/lib/hadoop-lzo/lib/native
設定ファイル内のパラメータspark.driver.extraClassPathとspark.executor.extraClassPathの両方に追加されます。私はテーブルのスキーマを印刷することができます。しかし、カウントのような任意の操作を実行しながら、ショーは、()は、エラーの下にスロー
`
によって引き起こさ:(java.lang.ClassLoader.findClassでoracle.jdbc.OracleDriver :java.lang.ClassNotFoundExceptionが(ClassLoader.java:424)at org.apache.spark.util.ParentClassLoader.findClass(ParentClassLoader.scala:26) at java.lang.ClassLoader.loadClass(ClassLoader.java:424)at org.apache.spark。 util.ParentClassLoader.loadClass(ParentClassLoader.scala:34) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)at org.apache.spark.util.P arentClassLoader.loadClass(ParentClassLoader.scala:30) でorg.apache.spark.repl.ExecutorClassLoader.findClass(ExecutorClassLoader.scala:77) ...もっと21
`
executor jvmsを実行しているユーザーがすべてのマシンで/home/hadoop/ojdbc7.jarを読み取り可能ですか?ドライバだけがクラスを利用できるように見えます。 –
ありがとう@RickMoritz、jarを/ usr/lib/spark/jars /に置く。私の問題を解決しました –
@SurajitKunduあなたの質問に答えて、今後の読者に受け入れてもらえますか? –