我使用Spring Batch將大量的在線數據提取 - 轉換 - 加載到數據倉庫中進行推薦分析。兩者都是RDBMS。使用Spring批處理的ETL的最佳實踐?
我的問題是離線Spring批處理ETL的最佳做法是什麼?滿負荷或增量負荷?我更喜歡滿負荷,因爲它更簡單。目前我正在使用這些步驟進行數據加載作業:
step1:在數據倉庫中截斷表A;
第二步:將數據加載到表A中;
步驟3:截取數據倉庫中的表B;
第4步:將數據加載到表B中;
step5:截取數據倉庫中的表C;
第6步:將數據加載到表C中;
...
這些表A
,B
,C
,...在數據倉庫的實時推薦系統處理中。
但是由於我從在線數據庫加載的數據量很大,整個作業處理將非常耗時。因此,如果我截斷一個表並且還沒有加載數據,那麼依賴於這個表的實時推薦處理將會有一個大問題。我怎樣才能防止這種數據不完整的情況發生?使用Staging Table或者類似的策略?
任何答覆將不勝感激。
這不是一個真正的彈簧批量問題;這只是一個直接的ETL設計問題。 – Ickster
感謝您的提醒。我修改了標籤。 – Wuaner