我們在δδ流源表管道可能數據刪除的時候。
錯誤消息是相當自我解釋:
從191年流源版本…。這是目前不支持。如果你想忽略刪除,設置選項“ignoreDeletes”到“真正的”。
不清楚是如何設置此選項。這就是我們現在但不產生期望的結果。期望的結果是新數據讀取和刪除被忽略。
設置管道。ignoreDeletes = true;創建或更新直播表……
這個選項應該設置在三角洲的生活方式表嗎?
嗨@Zachary希金斯,
例如,假設您有一個表user_events日期,user_email和行動列按日期劃分。你流user_events表,你需要刪除數據由於GDPR。
當你刪除分區邊界(即在一個分區列),文件已經分割價值所以刪除隻是滴這些文件的元數據。因此,如果你隻是想一些分區的刪除數據,您可以使用:
spark.readStream.format(“δ”).option (“ignoreDeletes”,“真正的”).load (“/ tmp /δ/ user_events”)
但是,如果你必須基於user_email刪除數據,您將需要使用:
spark.readStream.format(“δ”).option (“ignoreChanges”,“真正的”).load (“/ tmp /δ/ user_events”)
如果你更新一個user_email update語句,該文件包含user_email是重寫。當你使用ignoreChanges,新的記錄與所有其他不變向下遊傳播記錄在同一文件中。你的邏輯應該能夠處理這些輸入重複的記錄。
更多細節請辦理文檔。