2017-06-17 6 views
1

Spark JDBCを使用してTeradataからデータを抽出するために接続しようとしています。メインの親ディレクトリに "lib"ディレクトリを作成し、外部のTeradata jarsを配置し、sbtパッケージを実行しました。また、spar-shellコマンドに "--jars"オプションを指定してjarファイルを提供しています。私はjarファイルの「ジャーTVF」を行うときしかし、私は火花シェルを実行すると、それはクラスにSpark JDBCを使用したTeradataへの接続

Exception in thread "main" java.lang.ClassNotFoundException: com.teradata.hadoop.tool.TeradataImportTool 

を見つけるように見えることはありませんしかし、私は、クラスを参照してください。何とかSparkユーティリティがjarファイルを見つけることができません。スパークが見つけることができるように他に必要なことはありますか?この特定のクラスcom.teradata.hadoop.tool.TeradataImportToolteradata-hadoop-connector.jar

にあなたが例以下のようにジョブを送信しながら、渡すことを試みることができている

+0

してみてください。それは同様の状況で私を助けました。 – morfious902002

答えて

1

を助けてください:

--conf spark.driver.extraClassPath complete path of teradata-hadoop-connector.jar 
--conf spark.executor.extraClassPath complete path of teradata-hadoop-connector.jar 

OR

輸入瓶両方のドライバ&エグゼキュータに。したがって、以下の両方の行を追加してconf/spark-defaults.confを編集する必要があります。

spark.driver.extraClassPath complete path of teradata-hadoop-connector.jar 
spark.executor.extraClassPath complete path of teradata-hadoop-connector.jar 
  • 注:依存関係を持つuber jar is also known as fat jarすなわち瓶 を使用することができます。同様に、この種のを回避するための代替的なアプローチあなたの脂肪のjarファイルにそれを追加する問題の

+0

は動作していますか?もしあなたが投票権を持っていれば、それは私の問題なのですか? –

関連する問題