2017-06-17 226 views
1

我试图连接到使用Spark JDBC从Teradata中提取数据。我在主父目录上创建了一个“lib”目录,并放置了外部Teradata JAR并运行了sbt包。另外,我还在我的spark-shell命令中提供了“--jars”选项来提供jar。然而,当我运行火花外壳,它似乎并没有找到类使用Spark JDBC连接到Teradata

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

然而,当我做“罐子TVF”的jar文件,我看到了类。不知何故,Spark实用程序无法找到该jar。还有什么我需要做的,所以Spark能找到它吗?请帮助

+0

尝试添加到你的脂肪罐子。这帮助我处于类似的情况。 – morfious902002

回答

1

这种特殊类com.teradata.hadoop.tool.TeradataImportToolteradata-hadoop-connector.jar

你可以尝试在提交的工作就像下面的例子来传递:

--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 
+0

它工作吗?如果是的话,你可以投票/接受为所有者或说这是我的问题...沉默不会帮助! –