Oracle DB 增加『ETL + DML』大量資料拋轉速度 (批次維護資料)

在 ETL + DML 資料大量維護 & 拋轉中,

一筆一筆資料拋轉, 雖然確保資料是否已拋轉成功或失敗, 但是效率卻是最差,

可以採用 "批次+ROWID" 方式, 確保每一筆資料拋轉狀況, 且效率又好,

優點 1: 增加效率, 說明如上.

優點 2: 當拋轉速度夠快, 其實可以不用中介 DB 來當緩衝, 如此便可減少中介 DB 管理.

優點 3: 不是讓來源端直接對 DB 作 DML 存取, 而是透過 Package 方式, 一些機密管控、複雜處理, 均可在 Package 中處理, 這樣便可提高資料一致性.

測試結果 :

從越南拋資料到台灣 (一筆一筆拋轉) :
    100 筆資料, 共費時 8.613 秒
  1000 筆資料, 共費時 86.420 秒 = 1.5 分鐘
10000 筆資料, 共費時 872.635 秒 = 14.5 分鐘

從越南拋資料到台灣 (批次+ROWID 拋轉) :
    100 筆資料, 共費時 0.439 秒, 快了 20 倍.
  1000 筆資料, 共費時 1.183 秒, 快了 73 倍.
10000 筆資料, 共費時 5.831 秒, 快了 150 倍.

以上, 參考看看囉 ^^.

Related Posts Plugin for WordPress, Blogger...