SSD在SQLServer中的應用

2022-03-24 05:22:20 字數 1594 閱讀 2809

一. 首先,回顧一下 ssd 的讀寫特性

(1)有限次數寫;

(2)隨機讀效能最好;

(3)順序讀效能好;

(4)順序寫效能差;

(5)隨機寫效能最差。

從儲存上來說,sqlserver 不同的內容有其特有的個性。     

下面就tempdb,資料,索引,事務日誌,分別列舉他們各自的特點,分析他們是否適合及如何利用快速訪問介質。

二. sqlserver 資料庫如何使用快速儲存

1. tempdb

特點:

(1)大量順序寫,隨機寫;

分析:tempdb 大量寫操作的特性,可能會讓ssd很快的被磨損;對可擦寫次數有限的ssd來說,確實不是個好訊息;

(2)如果能提公升tempdb的讀寫效能,可以給整個資料庫的執行效率帶來很大的提公升;

分析:tempdb 需要使用高速儲存介質。

(3)不需要保證 tempdb 資料的安全,資料在重啟後會自動清除;

分析:由於不用考慮其資料的固化及安全,因此,可以選擇一些快速讀寫但無使用次數限制的介質;

例如:ramdisk(用記憶體模擬磁碟)

策略:

(1)盡量考慮其他高速儲存介質,例如,記憶體,借助ramdisk技術;

(2)如果用ssd,建議:

a)單獨使用一塊ssd存放。即便該盤出故障,換塊盤,或修改儲存位址,重啟sqls,就可以再提供服務;       

b)tempdb 分檔案,盡量利用ssd的併發特性

cpu總核數 < 8  檔案數等於cpu總核數;

cpu總核數 >= 8 檔案數等於8;

2. 資料,索引

特點:

(1)順序寫

(2)隨機讀

分析:可以利用到ssd的優點

策略:

(1)建議使用ssd;

(2)使用檔案組,將資料和索引分開;

(3)建立多個檔案組,資料做分割槽(同樣是想充分利用ssd的io併發)

3. 事務日誌

特點:

(1)離散的連續寫;

(2)乙個資料庫只能有乙個日誌檔案;

(3)安全性要求高;

分析:雖然是離散的連續寫,但由於有buffer的存在,其實就是連續寫。連續寫式hdd的強項;

策略:

(1)事務日誌建議使用hdd

(2)如果事務日誌的寫操作有瓶頸,則考慮使用ssd,但必須確保:

a)使用企業級的ssd,做raid10;

b)選擇有寫快取且有斷電保護電路的ssd;

三. 推薦的使用架構

資料庫中儲存的畢竟都是重要的資訊,有人會擔心,萬一哪天人品不好,ssd 資料盤真的出故障了,怎麼辦?

建議,使用讀寫分離的方式。在讀庫中使用ssd。這樣既能保證資料安全,又能有效利用ssd的高效離散讀特性。

SSD在SQLServer中的應用

一.首先,回顧一下 ssd 的讀寫特性 1 有限次數寫 2 隨機讀效能最好 3 順序讀效能好 4 順序寫效能差 5 隨機寫效能最差。從儲存上來說,sqlserver 不同的內容有其特有的個性。下面就tempdb,資料,索引,事務日誌,分別列舉他們各自的特點,分析他們是否適合及如何利用快速訪問介質。二...

在sqlserver中with nolock 詳解

在查詢語句中使用 nolock 和 readpast 處理乙個資料庫死鎖的異常時候,其中乙個建議就是使用 nolock 或者 readpast 有關 nolock 和 readpast的一些技術知識點 對於非銀行等嚴格要求事務的行業,搜尋記錄中出現或者不出現某條記錄,都是在可容忍範圍內,所以碰到死鎖...

write在sqlserver中的使用

我用乙個簡單的例子來說明一下 下面是乙個表 declare table table id int identity 1,1 window nvarchar max insert into table window select aaaa1111 union all select aaa111 uni...