介紹
為達到最大型網站所需的高性能級別,多層系統一般在多個服務器之間平衡每一層的處理負荷。SQL Server 通過對數據庫中的數據進行水平分區,在一組服務器之間分攤數據庫處理負荷。這些服務器獨立管理,但協作處理應用程序的數據庫請求;這樣一組協作服務器稱為“聯合體”。
只有在應用程序將每個 SQL 語句發送到包含該語句所需的大部分數據的成員服務器時,聯合數據庫層才能達到非常高的性能級別。這稱為使用語句所需的數據來配置 SQL 語句。使用所需的數據來配置 SQL 語句不是聯合服務器所特有的要求。群集系統也有此要求。
雖然服務器聯合體與單個數據庫服務器對應用程序來說是一樣的,但在實現數據庫服務層的方式上存在內部差異,如下表所示。
單個服務器層 |
聯合服務器層 |
---|---|
生產服務器上有一個 SQL Server 實例。 |
每個成員服務器上有一個 SQL Server 實例。 |
生產數據存儲在一個數據庫中。 |
每個成員服務器都有一個成員數據庫。數據分布在成員數據庫之間。 |
一般每個表都是一個實體。 |
原始數據庫中的表被水平分區到成員表。每個成員數據庫有一個成員表,而且使用分布式分區視圖使每個成員服務器上看起來似乎都有原始表的完整副本。 |
所有連接都連接到單個服務器,而所有 SQL 語句都由 SQL Server 的同一實例進行處理。 |
應用程序層必須能夠將 SQL 語句配置到包含語句所引用的大部分數據的成員服 |
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
