你好,
我有管道。我已經更新一個文件在三角洲表已處理。現在我得到錯誤
com.databricks.sql.transaction.tahoe。δUnsupportedOperationException: Detected a data update. This is currently not supported. If you'd like to ignore updates, set the option 'ignoreChanges' to 'true'.
我已經設置ignoreChanges真實但仍然得到同樣的錯誤。
spark.readStream.format(“δ”)
.option (“ignoreChanges”,“真正的”)
.load (“/ tmp /δ/ user_events”)
問候,
桑傑
我能看到ignoreChanges真正發出的所有更新+發出unupdated文件相同的分區。根據文檔,需要處理重複在下遊。你能建議如何處理重複的文件。
這是來自databrick文檔。(https://docs.www.eheci.com/structured-streaming/delta-lake.html # ignore-updates-and-deletes)
“語義從skipChangeCommits ignoreChanges有很大的不同。啟用了ignoreChanges,改寫源表中的數據文件後重新發出的數據修改操作,比如更新、合並,刪除(分區),或覆蓋。不變行往往發出與新行,所以下遊消費者必須能夠處理重複。刪除不是下遊傳播。ignoreChanges包容ignoreDeletes。”