海量資料遷移之資料載入流程
在之前的博文中分享了關於資料抽取流程的一些思路,整體來說,資料的抽取是輔助,資料的載入是關鍵。載入的過程中每一步需要格外關注,稍有偏差就可能造成資料的損壞或者丟失。
為了更加清晰的說明透過外部表來實現資料載入的流程,特意畫了如下的流程圖。
在這個圖中,資料的抽取是左邊的部分,可以根據需要生成對應的外部表dump檔案。
這個時候可以在目標環境中也建立只讀使用者,外部表使用者,只讀使用者中只存放同義詞,外部表使用者中存放的是需要載入的外部表,整個外部表的載入過程不會消耗額外的物理空間,而且載入啊速度極快。
這麼做有幾個好處,最大的一個好處就是可以透過這種方式提前進行資料校驗。把一些潛在的資料衝突問題提前發現,提前修復,如果在大半夜的資料載入中發現了問題,再去修復似乎就晚了很多,而且帶著疲憊去嘗試修復資料真實苦不堪言。
右邊的圖是資料載入的一個流程圖。
我特意把外部表的dump檔案用類似u盤的圖示代替就是想說明外部表的載入是即插即用,用完直接解除安裝即可。
而資料在載入之前需要做的一個重要步驟就是資料比較,就是右邊圖中藍色的標示部分。
透過比較只讀使用者(即目標資料)和外部表使用者中的外部表資料(源資料),可以靈活的匹配主鍵列,非唯一性約束列可以很有效的進行資料的冗餘比較。
有了這種方式,在多次的資料遷移中,都可以在資料載入前提前進行資料檢查。著實讓人放心不少,對於提升自信心是很有幫助的。一旦發現了資料問題,就可以及時發現,提前發現,讓專門的團隊及時修復資料。
至於最關鍵的資料載入,就是外部表使用者和目標資料使用者之間的資料關聯了。可以透過insert append的方式進行資料的匯入。可以根據資料情況進行切分粒度的控制。比如我們有一個表test特別大,有500G,我們就可以把這個大表在收據抽取的時候進行細粒度的切分,比如我們透過啟用並行生成了500個dump檔案,這樣每個dump檔案就基本上是1G的標準,每1G的資料載入我們及時提交,會給Undo帶來緩解不少的壓力。而且這樣資料的載入流程可以靈活控制,而不用用漫長的等待來做最終載入是否成功的賭注。
為了更加清晰的說明透過外部表來實現資料載入的流程,特意畫了如下的流程圖。
在這個圖中,資料的抽取是左邊的部分,可以根據需要生成對應的外部表dump檔案。
這個時候可以在目標環境中也建立只讀使用者,外部表使用者,只讀使用者中只存放同義詞,外部表使用者中存放的是需要載入的外部表,整個外部表的載入過程不會消耗額外的物理空間,而且載入啊速度極快。
這麼做有幾個好處,最大的一個好處就是可以透過這種方式提前進行資料校驗。把一些潛在的資料衝突問題提前發現,提前修復,如果在大半夜的資料載入中發現了問題,再去修復似乎就晚了很多,而且帶著疲憊去嘗試修復資料真實苦不堪言。
右邊的圖是資料載入的一個流程圖。
我特意把外部表的dump檔案用類似u盤的圖示代替就是想說明外部表的載入是即插即用,用完直接解除安裝即可。
而資料在載入之前需要做的一個重要步驟就是資料比較,就是右邊圖中藍色的標示部分。
透過比較只讀使用者(即目標資料)和外部表使用者中的外部表資料(源資料),可以靈活的匹配主鍵列,非唯一性約束列可以很有效的進行資料的冗餘比較。
有了這種方式,在多次的資料遷移中,都可以在資料載入前提前進行資料檢查。著實讓人放心不少,對於提升自信心是很有幫助的。一旦發現了資料問題,就可以及時發現,提前發現,讓專門的團隊及時修復資料。
至於最關鍵的資料載入,就是外部表使用者和目標資料使用者之間的資料關聯了。可以透過insert append的方式進行資料的匯入。可以根據資料情況進行切分粒度的控制。比如我們有一個表test特別大,有500G,我們就可以把這個大表在收據抽取的時候進行細粒度的切分,比如我們透過啟用並行生成了500個dump檔案,這樣每個dump檔案就基本上是1G的標準,每1G的資料載入我們及時提交,會給Undo帶來緩解不少的壓力。而且這樣資料的載入流程可以靈活控制,而不用用漫長的等待來做最終載入是否成功的賭注。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23718752/viewspace-1476445/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 海量資料遷移之資料抽取流程
- 海量資料遷移之外部表載入
- 海量資料遷移之衝突資料篩查
- 海量資料遷移之透過shell估算資料量
- 海量資料遷移之通過shell估算資料量
- 海量資料遷移之使用分割槽並行切分匯入並行
- 海量資料處理_資料泵分批資料遷移
- Oracle資料庫資料遷移流程Oracle資料庫
- 海量資料遷移之傳輸表空間(一)
- 海量資料遷移之外部表切分
- 使用impdp,expdp資料泵進入海量資料遷移
- 海量資料遷移之sqlldr和datapump的缺點分析SQL
- 海量資料遷移之誤操作和防範建議
- 海量資料遷移之透過rowid切分大表
- 海量資料遷移之通過rowid切分大表
- 海量資料處理_使用外部表進行資料遷移
- 使用資料泵(expdp、impdp)遷移資料庫流程資料庫
- 海量資料遷移之分割槽並行抽取並行
- 海量資料遷移之分割槽並行切分並行
- 海量資料遷移之外部表並行抽取並行
- 資料庫遷移之資料泵實驗資料庫
- 海量資料遷移之使用shell啟用多個動態並行並行
- 遷移資料.
- 海量資料轉換遷移的程式碼自動生成
- 【資料遷移】使用傳輸表空間遷移資料
- ClickHouse學習系列之八【資料匯入遷移&同步】
- Kafka資料遷移Kafka
- 資料庫遷移資料庫
- redis資料遷移Redis
- 轉資料遷移
- ORACLE 資料遷移Oracle
- DXWB 資料遷移
- 資料的遷移
- Harbor資料遷移
- Laravel 學習之資料庫遷移Laravel資料庫
- ORM實操之資料庫遷移ORM資料庫
- 【遷移】使用rman遷移資料庫資料庫
- Cacti資料備份與遷移 (轉載)