簡介: GreenPlum是一個基於PostgreSQL資料庫開發的MPP架構的資料庫倉庫,適用於OLAP系統,支持50PB(1PB=1000TB)級海量數據的存儲和處理。 背景: 目前有一個業務是需要將Oracle資料庫中的基礎數據增量同步到GreenPlum數據倉庫,便於進行數據分析和處理。 規 ...
簡介:
GreenPlum是一個基於PostgreSQL資料庫開發的MPP架構的資料庫倉庫,適用於OLAP系統,支持50PB(1PB=1000TB)級海量數據的存儲和處理。
背景:
目前有一個業務是需要將Oracle資料庫中的基礎數據增量同步到GreenPlum數據倉庫,便於進行數據分析和處理。
規模:
每天產生60G左右數據,最大的表每天新增上億條數據。
解決方法:
1)歷史數據通過抽取導入的方式進行初始化。
2)增量更新數據:
使用GoldenGate將Oracle日誌解析,傳給GreenPlum所在的節點。
GreenPlum節點通過程式將GoldenGate解析的日誌記錄增量同步到GreenPlum資料庫倉庫中。
最終結果:
1.初始化數據一次大概三天時間,初始化5T左右數據。
2.增量同步數據延時不超過3個小時。
3.GreenPlum性能經過優化後,比在Oracle資料庫上查詢要快10~100倍(GreenPlum的機器配置相對要低很多)。
4.對部分大表進行了壓縮處理,會減少存儲的空間和I/O的開銷。
5.沒有使用列式存儲,大表的列太多,對於不適合做列式存儲,僅進行了壓縮。
6.對部分表的分佈鍵進行了調整,極大的提升了數據分析的效率。