執行計畫中有一個Number of Rows Read資訊,這篇我來簡單介紹一下
[SQL SERVER]What Number of Rows Read
- 1061
- 0
- SQL_SERVER
執行計畫中有一個Number of Rows Read資訊,這篇我來簡單介紹一下
真實世界,大部分企業無法接受Database停止服務太久時間,
一般的backup and restore雖然可以達到目的,但由於backup and restore過程中,
還是有資料的新增、修改或刪除持續發生,雖然資料庫restore完成,
可是無法避免人工進行補資料和確認資料一致性作業,
這時你才會知道Mirroring的好處
SQL2016 AG開始支援MSDTC,MSDTC幫我們保證分散式交易的一致性,
交易期間如果某一SERVER發生問題,整包交易相關資料全部rollback,
這功能我相信對.NET應該不陌生(我個人幾乎很常使用)。
Always Encrypted功能將資料庫一些敏感資料永遠加密,
有效防止DBA或未經授權人員查看這些敏感資料,
因APP(需使用.NETFramework4.6以上版本)將資料送進DB時已經加密,且透過APP讀取也能自動解密。
Memory table將所有資料都存放到記憶體,內部針對每一筆資料建立multiple versions避免blocking情況
(multi-version optimistic concurrency control多版本樂觀並行控制),同時也沒有任何的locks和latchs
善用交易效能分析報表,預估資料表或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 (只擷取所需欄位)
介紹個人AlwaysOn AG備份考量
備份作業可能會是一項耗用I/O和CPU(啟用備份壓縮)的繁重作業,這項作業可能會影響主要伺服器效能,
現在透過AlwaysOn AG將備份作業卸載至同步或同步中的次要複本,讓主要伺服器專用於生產應用程式。
SQL2012和SQL2014永遠只會讀取read-only routing list中第一個可用複本,
所以之前你可以透過Agent job定時修改routing list達到分流效果(非真正load balancing),
但現在SQL2016可在多個可讀取次要複本,輕鬆實現Round-robin load balancing。
Alwayson2016 AG 可以提供企業
High Availability(HA):硬體故障、藍白畫面(BSODs)
Disaster Recovery(DR):快速災難復原(移轉)
Scale out:跨多台伺服器分擔workload
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這幾年堅持及一路走來的改善。