考量既有主機Buffer pool不夠大的狀況,記憶體無法應付大量交易。可能因為i/o而降低效能,因此SQL 2014新增了Buffer Pool Extension技術。*.bpe檔案主要是建立在SSD硬碟上,利用SSD快速讀寫的技術,使其成為記憶體與實體硬碟中的第二個快取暫存區。
緩衝池擴展功能的優點。
>增加隨機 I/O 輸送量 (Increased random I/O throughput)
>減少I / O延遲 (Reduced I/O latency)
>增加交易輸送量
>透過更大的混合式緩衝集區來提升讀取效能
>一種緩存架構,可以充分利用現有和將來的低成本記憶體磁碟的快取架構本
設定的容量不可以比目前使用的佔存區小,只能比目前所使用的大。
不然會有ERROR
Msg 868, Level 16, State 1, Line 1
Buffer pool extension size must be larger than the current memory allocation threshold 3426 MB. Buffer pool extension is not enabled.
緩衝池擴展大小最多可達企業版max_server_memory值的32倍,標準版最多可達4倍。微軟建議物理內存大小(max_server_memory)與緩衝池擴展大小1:16或更小之間的比率。較低的比例在1:4至1:8的範圍內可能是最佳的。
利用系統檢檢視表查詢buffer pool extension 明細
停用buffer pool extension
一旦啟用緩衝池擴展,請避免對文件進行配置更改或關閉該功能。這些活動可能會對服務器性能產生負面影響。禁用時,在重新啟動SQL Server實例之前,不會回收用於支持該功能的內存。直到重啟SQL Service才能清除紀錄。
備註
BPE檔案一般是設實體記憶體的4~6倍,視SSD大小而定
當SSD卸載,或SSD損毀。不影響SQL SERVICE啟動
若原先就把TempDM 放在SSD,若SSD掛點,SQL Service會因無法讀取TempDB檔案而無法啟動
解決方法:使用Command Line與SQL Command
資料:http://www.xtivia.com/start-sql-server-lost-tempdb-data-files/