Transactional-Replication

CDC vs 複製 vs 其他任何東西

  • May 15, 2017

在我的產品中,我們需要為報告團隊創建一個解決方案來提取和處理數據。我們需要從我們的數據庫向他們發送增量數據更改。我正在評估各種解決方案。研究了 CDC 和 Replication,但不確定要使用哪一個或建構一個自定義的。

雖然 CDC 易於配置並且需要比複製更少的基礎架構,但更改表位於同一個數據庫中,性能可能會降低,具體取決於報告團隊查詢數據庫的頻率。

複製似乎更暢銷,但它需要大量的基礎設施。看起來也必須在同一伺服器中有單獨的數據庫實例或使用另一台伺服器。

定制解決方案在這裡會有所幫助嗎?有沒有辦法創建數據庫副本並從源數據庫讀取日誌並通過作業將增量數據推送到目標數據庫。

CDC 並不是真正設計為使報告數據庫保持最新的一種方式,它更多的是用於跟踪更改。

這裡的最終目標到底是什麼,您是否只是要將一些選定的表\數據帶到另一台伺服器上進行報告,或者您是否正在尋找一種方法來獲取整個數據庫?

你有幾個選擇,如果你只對少數表感興趣,那麼你可能想看看複製。複製實際上並不需要太多的基礎設施,只需要另一個 SQL Server 來複製。

如果您想擁有數據庫的完整副本以用於報告目的,那麼您擁有的最簡單的選擇是日誌傳送,但請注意,當日誌傳送過程在日誌中播放時,報告數據庫將不可用。

您擁有的另一個選擇是使用可用性組,其中輔助節點充當只讀報告副本。

引用自:https://dba.stackexchange.com/questions/143746