通常我們搭建ADG 庫,2個目的:備份容災/分離報表查詢,在實時性要求比較高的讀寫分離/實時報表場景,ADG 數據同步延遲問題不可忽視。
有人可能會說oracle dataguard 不是有最大保護模式、實時應用模式嗎,最大保護模式只是保障了redo 傳輸的實時性,不能保障數據應用的實時性。實時應用模式同樣只是改善了redo 傳輸的實時性,也不能保障數據應用的實時性。
觀察redo 傳輸延遲情況,可以通過查看視圖v$standby_log、v$archived_log :
觀察數據同步延遲情況可以通過查看視圖v$standby_event_histogram:
通常情況下,當主庫負載很高交易量很大的情況下,備庫數據同步延遲比較明顯(即使存儲io性能良好),這是物理備庫redo 順序應用決定的,數據同步實時性要求比較高的報表查詢、讀寫分離的場景可以考慮使用OGG 邏輯復制來代替,12c rac dataguard standby 的多實例redo 應用特性在一定程度上改善了數據同步延遲。