問題
您正在監視一個流作業,並注意到它在處理數據時似乎卡住了。
當您查看日誌時,您發現作業在向檢查點寫入數據時卡住了。
INFO hdfsbackkedstatestoreprovider: Deleted files than 381160 for HDFSStateStoreProvider[id = (op=0,part=89),dir = dbfs:/FileStore/R_CHECKPOINT5/state/0/89]: INFO StateStore: retrieve reference to StateStoreCoordinator: org.apache.spark.sql. execute .streaming.state。StateStoreCoordinatorRef@56a4cb80 INFO hdfsbackkedstatestoreprovider:為HDFSStateStoreProvider刪除大於381160的文件[id = (op=0,part=37),dir = dbfs:/FileStore/R_CHECKPOINT5/state/0/37]: INFO StateStore:檢索到StateStoreCoordinator的引用:org.apache.spark.sql. execute .stream .state。StateStoreCoordinatorRef@56a4cb80 INFO hdfsbackkedstatestoreprovider: Deleted files than 313920 for HDFSStateStoreProvider[id = (op=0,part=25),dir = dbfs:/FileStore/PYTHON_CHECKPOINT5/state/0/25]:
導致
您正在嚐試使用本地DBFS路徑中的檢查點位置。
%scala query = streamingInput.writeStream。選項(“checkpointLocation”、“/ FileStore /檢查站”).start ()
解決方案
您應該為流檢查點使用持久存儲。
您不應該使用DBFS來流化檢查點存儲。