私はPySparkを使っていくつかの大規模な処理を行い、いくつかの結果をMongoDBインスタンスに保存しています。私はmongo-spark-connector_2.11-2.0.0.jar
を使ってデータフレームをMongoDBに書き出しています。PySparkでMongoDB例外を処理するには?
df.write.format("com.mongodb.spark.sql.DefaultSource").option("spark.mongodb.output.uri", "mongodb://username:[email protected]:10203/mydb.mycollection").mode("overwrite").save()
時々私は、このようななどConnectionException
、MongoCommandException
、などの例外を取得します。だから私はそれらの例外を処理したい。だから私はこれらの例外処理スニペットを追加しましたが、私はImportError: No module named com.mongodb
を取得します。
try:
df.write.format("com.mongodb.spark.sql.DefaultSource").option("spark.mongodb.output.uri", "mongodb://username:[email protected]:10203/mydb.mycollection").mode("overwrite").save()
except MongoCommandException:
err_code = MongoCommandException.getErrorCode()
if err_code == int(16):
print "Request size is too large to write to Mongo"
だから、あなたの誰もが原因PySparkは、Java jar
を利用している実行スタックにmongo-spark-connector_2.11-2.0.0.jar
興味深い。ありがとうございました! –