天天看點

sql server幾種讀寫分離方案的比較

原文: sql server幾種讀寫分離方案的比較

在生産環境中我們經常會遇到這種情況:

前端的oltp業務很繁忙,但是需要對這些營運資料進行olap,為了不影響前端正常業務,是以需要将資料庫進行讀寫分離。

這裡我将幾種可以用來進行讀寫分離的方案總結一下,這裡并不考慮資料庫是否高可用,隻針對讀寫分離場景,方案本身并無優劣可言,隻看是否适合業務使用場景,是以隻把幾個方案的特點羅列出來,遇到具體的問題時按自己需求和環境綜合考慮後再進行取舍

讀寫分離方案 實時同步 副本資料是否直接可讀 副本數 最小粒度 副本建立索引 環境 缺點
鏡像 否(需要開啟快照,隻讀) 1 域/非域(使用證書)

在高安全模式下對主庫

性能有一定影響

log shipping 是(隻讀) N UNC方式可通路  副本庫在做resotre時會斷開已連接配接使用者連接配接/可能影響正常日志備份
釋出訂閱 是(讀寫,但寫可能會産生資料不一緻) 表(查詢) 域/非域 在主庫上有大量DML操作時,對分發伺服器會有一定影響,且訂閱資料庫可能有資料同步延遲
always on

4(sql 2012)

8(sql 2014)

非域環境無法使用