簡體   English   中英

org.apache.spark.SparkException:寫入作業在 Databricks 上中止

[英]org.apache.spark.SparkException: Writing job aborted on Databricks

我使用 Databricks 從 Event Hub 攝取數據,並使用 Pyspark Streaming 實時處理它。 代碼工作正常,但在這一行之后:

df.writeStream.trigger(processingTime='100 seconds').queryName("myquery")\
  .format("console").outputMode('complete').start()

我收到以下錯誤:

org.apache.spark.SparkException: Writing job aborted.
Caused by: java.io.InvalidClassException: org.apache.spark.eventhubs.rdd.EventHubsRDD; local class incompatible: stream classdesc

我讀到這可能是由於處理能力低,但我使用的是 Standard_F4 機器,標准集群模式啟用了自動縮放。

有任何想法嗎?

這看起來像 JAR 問題。 Go 到 spark 中的 JAR 文件夾,並檢查是否有多個 jars 用於 azure-eventhubs-spark_XXX.XX。 我想你已經下載了它的不同版本並將它放在那里,你應該從你的收藏中刪除任何具有該名稱的 JAR。 如果您的 JAR 版本與其他 JAR 不兼容,也可能出現此錯誤。 嘗試使用 spark config 添加 spark jars。

spark = SparkSession \
            .builder \
            .appName('my-spark') \
            .config('spark.jars.packages', 'com.microsoft.azure:azure-eventhubs-spark_2.11:2.3.12') \
            .getOrCreate()

這樣spark會通過maven下載JAR文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM