之前我在SQL PASS分享個人使用In-Memory OLTP+AlwaysOn經驗,
使用上和disk table並無差異,但還是有些In-Memory OLTP特性必須要考量進去。
Enhance speed failover to secondary on AG
In-Memory OLTP和AlwaysOn整合相當不錯,以往你可以使用的功能,
那怕資料庫有包含In-Memory table也都可正常使用,
值得一提的是轉移到次要複本時間比disk table快10%左右,
因為不像disk table還需要recovery,Memory table的資料變更都會使用記憶體方式套用在次要複本,
由於資料已經都在記憶體中,所以移轉至次要複本會較快速。
AG同步模式會影響In-Memory table交易效能(SP1 CU5修正)
如同一開始提到SQL2014 AlwaysOn的redo log和log傳送吞吐量效能不如SQL2016,
再加上使用記憶體方式傳送資料應該也很快,
所以當初我認為使用AG同步模式應該不會影響In-Memory table交易效能,
但沒想到AG同步模式有時卻拖跨In-Memory table交易效能(Transactions:Transactions /sec),
後來該問題證實為bug並在SP1 CU5修正。
AlwaysOn failover cluster instance 速度不佳
由於FCI提供WFSC節點的容錯移轉(shared-storage的高可用性),
但如果包含大In-Memory table將大幅影響RTO,
這是因為需要先從檔案讀取,後載入記憶體完成後,資料庫才可正常存取,
載入時間取決於資料表資料量、data/delta 檔案數量、IOPS和可用CPU數量。
另外,我也使用sqlops建立關於AG的幾張dashboard,方便我快速知道AG狀態
目前我已經建立不少dashboard,sqlops真的好威
P.S
我對dashboard提出了一些想法,大家如果也覺得不錯的話,請幫我支持這些新功能,謝謝
Feature request: provide refresh interval,alert and sections for dashboard
參考
Monitor SQL Server AlwaysOn Availability Groups
Monitor Availability Groups (Transact-SQL)
sql server operations studio first touch
Performance monitoring of AlwaysOn Availability Groups – Part 1
Measuring Availability Group synchronization lag
In-Memory OLTP: High Availability for Databases with Memory-Optimized Tables
High Availability Support for In-Memory OLTP databases
The Memory Optimized Filegroup
SQL SERVER – Faster Application Performance with In-Memory OLTP
Compare SQL Server Performance of In-Memory vs Disk Tables