【问题标题】:How do you get the driver and executors to load and recognize the postgres driver in EMR with spark-submit?如何使用 spark-submit 让驱动程序和执行程序加载和识别 EMR 中的 postgres 驱动程序?
【发布时间】:2019-11-03 09:46:11
【问题描述】:

背景 我正在尝试运行从 Kafka 流式传输的 spark-submit 命令,并将 JDBC 接收器执行到 AWS EMR(版本 5.23.0)中的 postgres DB 并使用 scala(版本 2.11.12)。我看到的错误是

INFO TaskSetManager: Lost task 0.3 in stage 0.0 (TID 6) on <master-public-dns-name>, executor 1: java.sql.SQLException (No suitable driver found for jdbc:postgres://... 

ERROR WriteToDataSourceV2Exec: Data source writer org.apache.spark.sql.execution.streaming.sources.MicroBatchWriter@44dd5258 is aborting.
19/06/20 06:11:26 ERROR WriteToDataSourceV2Exec: Data source writer org.apache.spark.sql.execution.streaming.sources.MicroBatchWriter@44dd5258 aborted.

假设问题 我认为该错误告诉我在执行程序上找不到 jdbc postgres 驱动程序,这就是它无法沉入 postgres 的原因。

以前的尝试 我已经做了以下事情:

  1. 在我的结构化流作业中将我的驱动程序标识为Class.forName("org.postgresql.Driver")
  2. 在我的 spark-submit 作业中添加了--jars postgresql-42.1.4.jar \,以便将 jar 发送给驱动程序和执行程序。在此尝试中,此 postgres 驱动程序 jar 存在于我的本地 /home/user_name/ 目录中
  3. 还尝试--jars /usr/lib/spark/jars/postgresql-42.1.4.jar \ 到我的 spark-submit 作业,这是 emr 中的 spark 找到所有要执行的 jar 的位置
  4. spark-submit --driver-class-path /usr/lib/spark/jars/postgresql-42.1.4.jar:.... 开始我的 spark-submit 工作
  5. /usr/lib/spark/jars/postgresql-42.1.4.jar 添加到 spark.driver.extraClassPath、spark.executor.extraClassPath、spark.yarn.dist.jars、spark.driver.extraLibraryPath、spark.yarn.secondary.jars、java.library.path、以及一般的系统类路径
  6. 我的 jdbc 连接在 Zeppelin 中工作时,在 spark-submit 中不起作用。是jdbc:postgres://master-public-dns-name:5432/DBNAME"

预期结果: 我希望我的执行者能够识别 postgres 驱动程序并将数据发送到 postgres 数据库。

以前的尝试: 我已经使用以下建议无济于事:

Adding JDBC driver to Spark on EMR

No Suitable Driver found Postgres JDBC

No suitable driver found for jdbc:postgresql://192.168.1.8:5432/NexentaSearch

【问题讨论】:

    标签: postgresql apache-spark hadoop driver amazon-emr


    【解决方案1】:

    使用-- packages org.postgresql:postgresql:&lt;VERSION&gt;

    【讨论】:

      猜你喜欢
      • 2017-05-29
      • 1970-01-01
      • 2019-11-25
      • 1970-01-01
      • 2016-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-10
      相关资源
      最近更新 更多