簡體   English   中英

火花流失敗的批次

[英]spark streaming failed batches

由於內存相關問題,我在火花流應用程序中看到一些失敗的批處理

無法計算拆分,找不到塊輸入0-1464774108087

,而且我想知道是否有一種方法可以在不對當前正在運行的應用程序造成混亂的情況下在一邊重新處理這些批處理,就一般而言,不必完全相同。

在此先感謝Pradeep

如果您的數據吸收到火花的速率高於分配的或可以保留的內存,則可能會發生這種情況。 您可以嘗試將StorageLevel更改為MEMORY_AND_DISK_SER以便在內存不足時Spark可以將數據溢出到磁盤上。 這樣可以防止您的錯誤。

另外,我不認為此錯誤意味着在處理過程中任何數據都會丟失,但是您的塊管理器添加的輸入塊在處理開始之前就已超時。

Spark用戶列表中檢查類似的問題。

編輯:

數據不會丟失,只是不存在任務預期的位置。 根據Spark文檔

您可以使用其上的persist()或cache()方法將一個RDD標記為持久。 第一次在操作中對其進行計算時,它將被保存在節點上的內存中。 Spark的緩存是容錯的-如果RDD的任何分區丟失,它將使用最初創建它的轉換自動重新計算。

暫無
暫無

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

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