取消
顯示的結果
而不是尋找
你的意思是:

複製到生成δ表中重複的行

dataexplorer
新的貢獻者三世

大家好,

我想大部分從SQL server數據庫表加載到ADLS鋪文件,然後這些文件加載到三角洲表(生/銅)。我做了一個曆史/基本負荷但我後續增量加載(日期重疊與曆史負荷)產生重複。一些閱讀到目前為止我所做的是指出使用本機python代碼,如“為”循環不建議在磚——我可以解決這個附加的所有SQL語句合並在一起並執行單個語句,但想知道如果這是這樣,為什麼?謝謝你!

更新:我已經刪除了代碼for循環和嚐試執行的一個表,看來問題不是“為”循環。如果記錄在曆史負荷和再次發生在增量加載負載但行並沒有改變——仍然被加載到表作為一個重複的行。做增量加載文件需要互斥的不含任何重疊與先前的文件行嗎?

代碼如下:

火花。sql(“使用原料;”)文件= dbutils.fs.ls (landingZoneLocation) fi的文件:如果fi。isFile: delta_table_name = " crm_ " + fi.name.split (“。”) [0] .lower () deltaTableCopyIntoSQL = "複製到三角洲。dbfs: / mnt /生/“+ delta_table_name +”從“dbfs: / mnt /著陸/ crm /“+ processDate +”/“+ fi.name +”FILEFORMAT =拚花;“打印(deltaTableCopyIntoSQL) spark.sql (deltaTableCopyIntoSQL)

6個回答6

werners1
尊敬的貢獻者三世

正確的!

沒有特定的語法拚花。

你剛讀源數據(新傳入的記錄)dataframe火花。

合並使用dataframe(如果你使用sql,首先創建一個臨時視圖dataframe)。

dataexplorer
新的貢獻者三世

謝謝你的指導!

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map