2016年4月8日 星期五

SQL Server 2008 複寫實作 你不可不知的複寫常識

SQL Server 2008 複寫實作 你不可不知的複寫常識 

原文出處
https://dotblogs.com.tw/dotjason/archive/2009/08/03/9819.aspx
另外可以參考
http://caryhsu.blogspot.tw/2012/03/sql-server-nlb.html
你不可不知的複寫常識
複寫用來複製資料和資料庫物件的一項強大的功能,是大型資料庫或資料庫同步維持資料一致性的功能
透過各種網路、撥接連線,將資料散佈到不同地點上,即然是複寫了顧名思義,就是將資料同步的寫到各個不同的資料庫伺服器上
你不可不知的複寫常識 複寫用來複製資料和資料庫物件的一項強大的功能,是大型資料庫或資料庫同步維持資料一致性的功能
透過各種網路、撥接連線,將資料散佈到不同地點上,即然是複寫了顧名思義,就是將資料同步的寫到各個不同的資料庫伺服器上
當然在整個資料庫的複寫中,也有考量到效能處理及資料庫結構問題,又分為三種複寫架構:交易式、合併式、快照式。
快照式複寫:資料變更數量大,但次數不用太頻繁的同步複寫時,最適合使用快照式複寫。
在所有複寫功能中快照式在「發行者」端負擔較小,因為他不用追踨累加變更的資料,只需要將資料庫中的資料做快照即可。
例如,在整個整批交易中,每天共有三十萬筆資料,一天只需要傳回總部一次,那麼快照式複寫就可以較有效率的將資料複寫回去。
※此種複寫需要每一張表都有Identify欄位。
交易式複寫:當資料有任何改變時,會主動的傳遞到訂閱者,預設交易式複寫是唯讀存取,因此在訂閱者端有任何資料的改變
是不會傳遞回到發行者端的。不過交易式複寫是可以設定成訂閱者亦可更新資料。
這種複寫狀態會有較大的彈性並且於資料端有大量的更新或插入、刪除的動作,適合非MS SQL Server資料庫做同步的複寫方式。
※此種複寫在發行資料庫下會主動的配置交易記錄,透過交易記錄來執行複寫轉送,當使用這種複寫方式在資料尚未完全移動到散發資料庫前,記錄檔無法被截斷。
※所有交易式複寫的資料表上,必須包含主索引鍵,否則無法被利用來發送。
合併式複寫:與交易式複寫很類似,是在發行者上發佈後,訂閱者存資料時,之主動的交換最後一次同步處理所變更過的資料。
通常這種複寫是較適合在多個訂閱者可能會在不同時間之下更新相同的資料,較容易產生資料衝突,當資料產生衝突時,必須由DBA進行排解。
※此種複寫會自動建立一組GUID資料行,且支援Timestamp資料行,在訂閱者套用快照集時會重新產生timestamp,驗證timestamp是否為可用快照。

沒有留言:

張貼留言