5

我目前正在穿越像複製,日誌傳送,鏡像等SQL Server橫向擴展技術的叢林......我擁有在我的選擇以下約束條件:有關選擇哪種SQL Server 2008橫向擴展解決方案(複製,...)的幫助

  • 我想只讀負載散佈翻過的初級和次級(鏡,訂戶)服務器
    • 寫負載可以直接發送到主服務器
    • 該解決方案應該幾乎免維護。模式更改應該只是複製到輔助服務器上(注意:複製在這裏看起來有一些嚴重的限制)
    • 書寫數據應該可以在輔助服務器上非常快速地訪問(在1秒以內,但更好的是瞬間)
    • 在服務器故障時,我可以輕鬆地處理長達一小時的數據丟失。我更關心的是方便的可擴展

這裏有什麼我可以挑選一些選項:http://msdn.microsoft.com/en-us/library/bb510414.aspx。你可以分享的任何經驗?

回答

5

這些都是高可用性解決方案,而不是橫向擴展。 SQL Server沒有簡單的橫向擴展解決方案,也沒有任何其他(關係型)數據庫。儘可能多地使用主從複製規模,以便寫入可擴展規模。使用主 - 主複製複用寫入並帶來一致性問題。幾乎所有嘗試基於複製的解決方案的大規模部署都必須放棄它。

一種替代方法是通過消息傳遞的方式來重新考慮您的應用程序的獨立數據信封,方式爲MySpace scales out

另一種方法是放棄一些約束(寫一致性,讀取一致性,可恢復性,類型化模式,參照完整性),並選擇一個NoSQL的引擎,可以擴展自由解放一旦這些約束(CassandraHBaseMongoDB)。

最終橫向擴展是這樣一個基本要求,您必須圍繞解決方案設計您的應用程序,並且接受橫向擴展所施加的所有(嚴重)限制。但請注意,所有的關係引擎都可以擴展,並且全球範圍內需要擴展的部署數量超出了數據庫所能擴展的範圍。

+0

是的,我認爲您的最後一段適用於我們,因爲我們可以購買更大的服務器。然而,我擔心成本,因爲那些大型服務器花了很多錢......複製將使我轉換到一個更大的系統(目前是1個小型服務器),我認爲便宜,但麻煩可能不值得。 Out領域模型非常豐富和關係。許多表和約束。 – usr 2010-06-03 19:20:49