不需修改程式讓資料庫效能提升的方法- 資料壓縮
不需修改程式讓資料庫效能提升的方法:
- Data Compression:Table/Index 的壓縮,可以有效減少logical reads.
Compression
接著要介紹的是 Data Compression,SQL Database 可以針對 Table / Index 來做壓縮,降低logical reads 的讀取次數,補充說明:
- 資料壓縮會額外耗用 CPU
- 資料壓縮,在磁碟與在記憶體中都是處於壓縮的狀態,同時減少磁碟空間也會減少logical reads
- 資料壓縮可以 By Table by Index
- 資料壓縮可以有效降低 logical reads
- 資料壓縮有 Page 與 Row 兩種模式,建議使用 Page 模式
Table 壓縮對於讀取效能的提升
舉例來說:
set statistics io on
select * from [person].Address
經過壓縮之後, Logical reads 由 346 降到 226
如何針對 Person.Address Table 進行壓縮?
Address 右鍵 > Storage > Manage Compression
壓縮之後,該 logical Reads 大幅減少.
壓縮會損耗什麼資源?
Data compression 主要會損耗 CPU 資源,
因此可以長期觀察該 CPU 的使用效率,如果 CPU 使用效率很低的時候,
就可以考慮使用壓縮來提升 database效能
如何知道那些 Table 要壓縮?
可以透過這個 reports 針對 Table Disk I/O 使用率較高的 table 進行壓縮
- reports > Standard Reports > Disk Usage By table
- reports > Standard reports > Top Query by Average I/O