pyspark (windows環境)連線mongo資料庫時的報錯彙總
本地跑pyspark,連線mongo資料庫,提示如下報錯:
Caused by: java.lang.ClassNotFoundException: com.mongodb.spark.sql.DefaultSource.DefaultSource
解決辦法:
找到SPARK_HOME的jars目錄,是否有mongo-spark-connector_XXXXXX.jar。若沒有,到官網 https://spark-packages.org/package/mongodb/mongo-spark 下載指定jar包,放到該目錄下即可。
java.lang.NoClassDefFoundError: org/bson/conversions/Bson
到https://jar-download.com/artifacts/org.mongodb/bson/3.2.2/source-code 下載bson.jar,放到該目錄(SPARK_HOME的jars目錄)下即可。
到如下網站,下載 https://jar-download.com/artifacts/org.mongodb 和Mongo有關的driver包,放到該目錄(SPARK_HOME的jars目錄)下即可。
在pyspark程式設計時,提示如下報錯
spark-2.4.0-bin-hadoop2.7\python\lib\pyspark.zip\pyspark\worker.py", line 25, in <module>
ModuleNotFoundError: No module named 'resource'
解決辦法是:回退Spark版本,使用spark2.3及以下版本。這個報錯,可能是新版本有若干問題所致,暫時沒有解決辦法。【(2019年1月4日17點34分) 當然這個並不是絕對的,可能後續版本就沒有這個報錯】