標籤:效能 sharp 串連 訪問 table key 步驟 src sql
分布式視圖:
1.將大表分割到多個伺服器上儲存
2.物理上與邏輯上都存在多個表
3.通過視圖實現對分布到多個伺服器表進行訪問
4.整合網路Server Load Balancer
連結兩台資料庫:
建立同樣的資料結構:
create table Sales(c1 int not null,c2 int) alter table Sales add constraint pk_Sales_c1 primary key (c1)alter table Sales add constraint ck_Sales_c1 check(c1 between 1 and 100)
--後一太資料庫 101---200
點擊建立連結的伺服器:
建立視圖:
create view v_sales as select * from Sales union all select * from [localhost\Src1] HRDB.dbo.Sales
在第二台伺服器上建立與第一台伺服器的連結 和上面的步驟一樣
執行下面的語句:
insert v_sales values (2,2) insert v_sales values(200,200)
報錯:(保證分布式事物可用)
開啟:
在次執行報錯:
改成這樣:
set xact_abort on insert v_sales values (2,2) insert v_sales values(200,200)
執行下面的語句:
結果如下:
執行下面的更新語句:
第一台伺服器沒有全在第二台伺服器上:
由此可見:分布式視圖可以有效解決系統效能問題,將大表不同的記錄範圍---分在不同的伺服器上,然後通過視圖進行表的操作,有效平衡伺服器負載的流量
分割提升資料的訪問:
資料的放置:
1.資料放置的原則:
1.在不同的無力磁碟或RAID上建立檔案組
2.將常用的串連查詢中的表放置到不同的檔案組
3.將訪問頻繁的大表放置到不同的檔案組
4.記錄檔存放在單獨的磁碟
5.將Tempdb資料庫放置到快速的磁碟或RAID上
SqlServer效能最佳化分割提升效能分布式視圖(七)