在Spark执行程序上找不到Apache Phoenix JDBC驱动程序

时间:2019-08-04 04:31:25

标签: apache-spark jdbc phoenix

我正在通过胖客户端连接到apache phoenix,并且已经向--files提供了phoenix-client.jar,但是执行者仍然找不到驱动程序。

1 个答案:

答案 0 :(得分:0)

所以问题是如何在驱动程序和执行程序节点上自动将Spark类加载驱动程序类?

在所有添加到其类路径的jar中寻找java.sql.Driver文件用户META-INF目录。该文件包含驱动程序类名称,spark读取并单独加载它们。

在phoenix客户端jar中,META-INF中的java.sql.Driver文件丢失,因此我创建了内容为java.sql.Driver的文件org.apache.phoenix.jdbc.PhoenixDriver

放在META-INF目录下,并重新创建jar。

通过放置此更新的jar,spark能够自行加载驱动程序。