SQL2016大幅改善In-Memory OLTP效能,所以我在SQL2016花了很多時間研究、測試並閱讀相關whitepaper,
我也先告訴大家一件事,In-Memory table並非效能萬靈丹,
不要以為把disk-table轉換到in-memory table,現有系統交易效能就可突飛猛進,
而且真實世界要把disk table要轉換in-memory table也非那麼簡單(除非你的disk table layout真的很單純)。
SQL2016大幅改善In-Memory OLTP效能,所以我在SQL2016花了很多時間研究、測試並閱讀相關whitepaper,
我也先告訴大家一件事,In-Memory table並非效能萬靈丹,
不要以為把disk-table轉換到in-memory table,現有系統交易效能就可突飛猛進,
而且真實世界要把disk table要轉換in-memory table也非那麼簡單(除非你的disk table layout真的很單純)。
真實世界,大部分企業無法接受Database停止服務太久時間,
一般的backup and restore雖然可以達到目的,但由於backup and restore過程中,
還是有資料的新增、修改或刪除持續發生,雖然資料庫restore完成,
可是無法避免人工進行補資料和確認資料一致性作業,
這時你才會知道Mirroring的好處
Always Encrypted功能將資料庫一些敏感資料永遠加密,
有效防止DBA或未經授權人員查看這些敏感資料,
因APP(需使用.NETFramework4.6以上版本)將資料送進DB時已經加密,且透過APP讀取也能自動解密。
Memory table將所有資料都存放到記憶體,內部針對每一筆資料建立multiple versions避免blocking情況
(multi-version optimistic concurrency control多版本樂觀並行控制),同時也沒有任何的locks和latchs
Disk Base我們會切多個data file在不同Disk drives來提高I/O效能(也分散I/O),
而這樣的行為也和In-Memory table相似。
DBCC CLONEDATABASE允許你複製資料庫,但不會複製任何資料,
可是卻保有所有統計資料(statistics),而且在SQL2016又更棒了。
善用交易效能分析報表,預估資料表或SP移轉至In-Memory效益
SQL2016 Enterprise Edition 整體效能比 SQL2014 Enterprise Edition 快40%
1.比row store提高10倍以上的壓縮率(資料相同壓縮率更棒)
2.比row store提高查詢large data 10倍以上效能(優化CPU使用率、更高擊中率、更多資料可存入記憶體)
3.比row store減少更多I/O (只擷取所需欄位)
2017-01-20在SQL PASS分享Query Store
SLQ Server 2016新增兩個查詢提示MIN_GRANT_PERCENT 和MAX_GRANT_PERCENT,
設定值介於0~100.0之間。
之前大型資料庫效能調校課程有學員問我一個問題,
要了解SQL Server目前效能瓶頸,但假設只能選擇一個指標,
老師會選擇什麼呢?我的回答:Wait Type。
SQL2016 SP1增強In-Memory資料表新增Columnstore效能。
平行處理提高Insert效能。
針對非記憶體資料表,SQL2016提供了很多新的DMV來幫助我們分析和驗證Columnstore Index內部行為。
Clustered Columnstore Indexes在SQL Server 2016有四個重大增強。
1支援Unique Constraints
2支援Primary Key
3支援Foreign Keys
4建立較小資料列群組
SQL Server 2012推出Columnstore indexes第一個版本,
主要是提高OLAP查詢效能,並改用欄位為單位方式進行儲存,
但諸多限制對OLTP環境相當不有善(建立後資料表變唯讀、只能使用drop and create模式..等),
現在SQL Server 2016讓我們看到Columnstore indexes這幾年堅持及一路走來的改善。
SQL Server 2016可安全又便利,將特定資料表延展到Azure Cloud。
資料排序需求有時無可避免,以前SQL Server2014使用row by row來處理資料排序,
這種方式對小資料表來說可能沒啥效能影響,但如果對大資料表來說可不得不在意效能,
那麼SQL Server 2016要使用什麼方法來改善效能呢?
來看看SQL2016的TSQL有那些增強
這篇來看如何查詢時態表和轉換時態表操作