にJDBCが見つかりません最適なドライバ私は、MySQLのテーブルに挿入するスパーク
df.write.mode("append").jdbc("jdbc:mysql://ip:port/database", "table_name", properties)
を使用しています。
また、Class.forName("com.mysql.jdbc.Driver")
を自分のコードに追加しました。私は私のスパーク申請書を提出する場合
は:
spark-submit --class MY_MAIN_CLASS
--master yarn-client
--jars /path/to/mysql-connector-java-5.0.8-bin.jar
--driver-class-path /path/to/mysql-connector-java-5.0.8-bin.jar
MY_APPLICATION.jar
この糸クライアントモードは私のために動作します。
しかし、私は糸クラスタモードを使用する場合:それは仕事をdoens't
spark-submit --class MY_MAIN_CLASS
--master yarn-cluster
--jars /path/to/mysql-connector-java-5.0.8-bin.jar
--driver-class-path /path/to/mysql-connector-java-5.0.8-bin.jar
MY_APPLICATION.jar
を。
spark-submit --class MY_MAIN_CLASS
--master yarn-cluster
--jars /path/to/mysql-connector-java-5.0.8-bin.jar
--driver-class-path /path/to/mysql-connector-java-5.0.8-bin.jar
--conf spark.executor.extraClassPath=/path/to/mysql-connector-java-5.0.8-bin.jar
MY_APPLICATION.jar
をまだエラー「JDBCが見つかりませ最適なドライバ」を取得しない:私はまた、「--conf」に設定しようとしました。
私はmysql-connector-java-5.1.38-bin.jarを自分のjarファイルに追加しましたが、spark-submit cliには含まれていません。これを行うことによって、糸クライアントはまだ動作しますが、糸クラスターは動作しません。 –
これらの2つの変数 "spark.driver.extraClassPath"と "spark.executor.extraClassPath"を "SPARK_HOME/conf/spark-default.conf"ファイルに設定し、これらの変数の値をjarファイル。ワーカーノードに同じパスが存在することを確認します。 – Sumit
設定 "spark.driver.extraClassPath"は私のために、ありがとう。 –