Quest 公司的Shareplex 與 GoldenGate比較

比較內容

Quest SharePlex for Oracle

Oracle  GoldenGate

產品成熟度

 

SharePlex產品最早發佈於1999年,目前的版本爲7.0.2,產品成熟度非常高;成熟的產品有效地保障了數據的安全性,避免產品不穩定性對複製環境的影響,10多年來在全球有近1000個大型客戶的成功案例。在中國大陸地區有超過80個的成功案例。Shareplex在多個用戶環境中運行多年時間,複製鏈路非常穩定。

GoldenGate主要面向不同數據庫之間的數據複製和同步,在Oracle數據庫之間的複製並非其業務的主要方面。

目前 GoldenGate在全球約有幾百個成功案例,在國內有不超過10個客戶,其中還有多個用戶未能實施。根據GoldenGate在國內的部分用戶反映,該產品在複製過程中經常出現中斷或數據丟失等故障,需要大量的維護工作。

產品實現原理

Shareplex通過從Oracle日誌讀取數據庫的所有變化信息,傳輸到目標數據庫解析成SQL進行裝載,整個過程嚴格遵守數據一致性的順序,在目標數據庫通過主鍵技術保障數據一致性。SharePlex對複製中的表是否有主鍵或唯一索引以及主鍵級別補充日誌沒有硬性要求,且所有數據均可由日誌中捕捉出來,包括所有DDL操作,不需要從數據庫中查詢任何業務數據,也不需要創建人和觸發器。

GoldenGate通過從Oracle日誌讀取數據庫的所有變化信息,傳輸到目標數據庫解析成SQL進行裝載,其複製過程要求所有複製中的表必須有主鍵或唯一索引,同時要求打開主鍵級別的補充日誌。GoldenGate在複製Blob等特殊類型時,無法Redo文件中獲取全部信息,必須通過訪問被複制的表中數據或回滾段才能完成捕捉工作,而在業務繁忙的數據庫中回滾段數據更新非常快,GoldenGate經常會因此無法實現數據複製。

安裝及配置

安裝及配置極爲簡單,所有步驟均由軟件提示操作,如果出現誤操作將無法繼續,從技術上確保了操作過程的準確性,安裝後僅需要兩個步驟即可以開始數據的複製。

安裝配置複雜,安裝後開始數據複製需要近20個步驟纔可完成。且在配置過程中,如果出現錯誤或者遺漏步驟,不會有任何提示,很可能會造成複製軟件的實施失敗。

初始化同步

SharePlex在同構平臺上可採用與Oracle備份恢復相結合的方式實現數據的在線初始化同步,同步過程中對生產系統數據庫沒有任何影響。初始化同步時間約等於數據庫恢復時間。在異構環境下,SharePlex可調用Oracle的EXP/IMP工具,實現在線的初始化同步,同步期間系統資源佔用可控制在10%以內。同步時間約等於全庫進行IMP的時間,在同步過程中,還可通過調整並行度等方式,提高同步速度。

GoldenGate提供了在同構平臺上可採用與Oracle備份恢復相結合的方式實現數據的在線初始化同步,同步過程中對生產系統數據庫沒有任何影響。初始化同步時間約等於數據庫恢復時間。但初始化同和開始複製的過程中,GoldenGate不會對元數據庫加鎖,僅僅通過指定從某一個日誌開始複製,如果此時數據庫中有長時間未提交的事務跨了多個日誌,就會導致GoldenGate在目標端丟失該事務的數據。在異構環境下,GoldenGate無法提供在線的初始化同步功能,必須在應用停止的情況下實現數據的初始化同步。

對生產系統性能影響

SharePlex複製軟件在複製過程中完全在Oracle外部實現複製,對數據庫性能影響極低,同時,捕捉到的數據在網絡正常的情況下,直接通過內存和網絡傳輸到目標系統,無需額外的磁盤I/O,最大程度的降低了對生產系統性能的影響。

GoldenGate對部分特殊數據類型需要從數據庫表中查詢才能複製,DDL操作也需要通過觸發器來捕捉,並非真正意義的日誌捕捉複製方案;同時捕捉到的數據必須先寫在本地文件系統,然後再以文件的形式傳輸到目標端,對生產系統和目標系統都有額外的磁盤I/O佔用。

複製過程中對數據的校驗

複製過程中可校驗數據是否一致,如果發現不一致,可在日誌文件中進行記錄,並將發生不一致問題具體的SQL語句記錄到專門的文件裏,同時將有問題的表標示爲不易之狀態,提供詳細的診斷信息,以便用戶及時解決,避免更多的錯誤數據。

目標端爲了追求複製的性能,沒有數據一致性交驗機制,即使有大量數據不一致,也無法發現,用戶不能及時瞭解複製鏈路的運行情況。數據錯誤累積下去,會引起相關應用的故障。

複製軟件的異常處理

SharePlex通過多種機制來保障複製過程中的數據安全性,包括在出現複製軟件、數據庫、操作系統,主機等故障情況下恢復,通過複製軟件本身,和在目標數據庫中記錄的信息,可充分保障出現以上各種意外故障後,能準確、迅速的恢復,沒有任何數據損失。

GoldenGate爲了追求數據複製的性能,對複製過程中的數據缺乏必要的保障機制,且由於沒有在數據中記錄最後完成複製的事務SCN號等信息,如果出現複製軟件、數據庫、操作系統,主機等故障,很容易造成數據損失,導致數據不一致,這一問題可通過極爲簡單的測試模擬並反覆再現。

數據比較

SharePlex提供的在線的數據比較功能,如果懷疑發生部分數據不一致,可在應用不停機,且被比較的表上有操作的情況下動態的比較並定位不一致的數據,還可選擇在線的自動修復,充分保障數據的一致性。

GoldenGate的數據比較模塊與其複製模塊之間沒有任何聯繫,無法保障在應用不停機的情況下實現動態的數據比較功能。另外,其數據比較需要單獨的服務器,並需要額外購買該模塊纔可實現。未提供自動修復功能,需手工進行數據的修復,手工修復過程中可能會導致新的數據不一致問題。

單表同步

SharePlex 提供了方便的單表在線同步工具,僅需要一個命令,即可在線實現新增複製表或不一致表的在線同步,對業務沒有任何影響。

GoldenGate無單表同步工具,如需要對複製內容中的表進行重新同步,必須先將該表放到肚子的複製隊列,並通過手工方式確認該表上沒有爲提交事務,然後才能開始同步步驟;整個同步過程約需要20幾個步驟纔可完成,極其複雜繁瑣。

支持的數據類型

SharePlex目前已經支持所有的Oracle數據類型,對應用程序沒有限制。

支持數據類型較少,不支持如Bfile,UDT等類型。且對部分特殊字段如Blob,Clob等類型必須要通過訪問複製的表來獲取數據,無法通過日誌捕捉來實現。

DDL操作的支持

支持絕大部分DDL操作的複製,簡化了維護的工作量,所有DDL操作均從日誌中捕捉。

僅支持少數幾個DDL操作的複製,絕大部分操作需要人工的維護。切對DDL操作的複製需要在生產數據庫創建觸發器實現,並非基於日誌捕捉的複製(Golden宣稱它們在數據庫中不需要創建任何對象,實際並非如此)。

對RAC環境的支持

SharePlex支持所有平臺的RAC環境,且當產品安裝的RAC節點出現故障後,可通過Cluster軟件自動切換到另一個節點繼續複製,不需要人工干預,且不會有任何數據損失

支持RAC環境下的數據複製,但如果產品安裝的RAC節點出現故障,複製鏈路無法實現自動的切換,在進行人工干預後,雖然可以繼續複製,但每次切換都會有一定程度的數據損失。必須重新同步數據纔可以充分保障數據的一致性。

技術細節

產品的成熟度是由細節決定的,Shareplex從用戶方面進行考慮,非常關注技術細節。如:

(1)DDL可以選擇複製或不復制,可以選擇在複製出錯後的處理方法;

(2)提供多種配置參數供用戶選擇;

(3)可以配置延遲複製

(4)可以忽略針對指定事務或用戶複製

(5)可以按照用戶,表,或者使用通配符配置複製關係

(6)可以穿過主流的網閘設備,並提供專門的功能設置網絡配置……

GoldenGate主要面向不同數據庫之間的複製,對Oracle數據庫之間的複製功能比較簡單,除了基本的複製外,其他輔助功能較少,無法根據用戶實際應用環境實現個性化的配置及功能。

複製性能

SharePlex在目標端採用了多線程的方式實現對數據的加載,在保證所有事務的先後順序以及一致性的基礎上,對大併發量的業務也同樣可保證高速的處理速度。

Goldengate由於僅複製已經提交的事務,所以在目標端只有使用單線程的情況下,纔可以滿足事務一致性的要求,而在處理大量併發交易的情況下,無法保障數據的處理速度,GoldenGate也提供了多通道的方式來實現並行,但使用多通道方式的情況下,會將源端的一個事物,在目標端分成多個事務,且無法保證各事務的提交順序與源系統相同,從而無法從根本上保證數據的一致性。

大事務支持

事務開始後就進行復制,無論大事務或者小事務都可保證數據複製的實時性,所有事務與源端完全一致

事務提交後纔開始進行復制,在大事務情況下延遲較大

災難恢復後的數據庫回切

SharePlex提供從容災數據庫到生產數據庫的反向複製,可將接管後容災數據庫上的變化複製回生產數據庫,操作極其簡單,不需要重新初始化同步,可實現接近零停機時間的計劃內維護。

無法提供迅速回切功能,需要把生產系統數據庫全部清空,在用容災數據庫進行重新初始化同步,風險較大。

產品維護及監控

Shareplex提供成熟的手段進行復制鏈路的監控和維護

(1)    用戶可通過shareplex控制檯查看數據複製的各種相關信息,並設定個性化的參數以實現特定的功能,管理方便靈活。

(2)    可使用自帶的圖形監控程序,查看相關信息,當發生意外情況時可通過電子郵件實現及時的報警。

(3)    通過豐富的日記記錄複製軟件的運行情況;

(4)    內置支持SNMP功能,可與多種監控平臺結合,實現數據複製的實施監控(使用SNMP方式)

(5)    支持電子郵件報警功能,可根據客戶指定的測略,對複製軟件運行情況通過電子郵件通知用戶。

提供了圖形化監控界面,但同樣需要購買額外的模塊纔可實現。不支持電子郵件及SNMP方式的報警。

技術服務

 

Quest在國內有完善的服務體系,經驗豐富的技術人員爲用戶提供實施和培訓等全面服務。用戶還可以通過Quest專業知識庫等技術資源和完備的技術手冊來學習和掌握產品技術。

Quest有專門的Shareplex全球技術支持中心,爲全球用戶提供7*24的技術支持。

原GoldenGate廠商由於公司規模所限,無法提供7*24小時的技術支持,只能在美國的工作時間內提供有限的電子郵件支持。被Oracle收購之後,目前尚未完成相關技術資源的整合,在中國地區沒有熟悉該產品的技術人員。Oracle的技術服務價格較高,且絕大部分情況僅能提供電話或郵件支持,如需現場服務,必須嚴格按照人天計算。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章