91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫內存結構是怎樣的

發布時間:2021-12-02 14:43:31 來源:億速云 閱讀:178 作者:柒染 欄目:云計算

數據庫內存結構是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

數據庫從操作系統申請到的內存可分為兩部分:
1.緩存池內存(數據頁和空閑頁)
2.非緩存池內存(線程/DLL/連接服務器等)

Note:通過服務器實例屬性設置的最大/最小服務器內存是指緩存池內存
Note:Express只能使用1G內存

數據庫內存可分為三個層級
Level1:內存節點(Memory Node),提供低級的分配器的接口和實現,在NUMA中內存節點和CPU節點對應,只有內存CLERK可以訪問內存節點;

Level2:由內存CLERK/內存緩存/內存池三部分組成,內存CLERK訪問內存節點的接口來分配內存。

Level3:內存對象,SQL SERVER組件使用內存對象,而不使用Memory CLERK,內存對象使用內存CLERK的頁分配器接口來分配頁。

數據庫內存按申請大小分成兩部分
1.申請小于等于8KB為一單位的內存,這些內存被用于緩存(singlepage allocator)
2.申請大于8KB為一單位的內存,這些內存主要用于SQL CLR,Linked Server and backup buffer and others. 這些內存稱為Multi-Page OR MemToLeave(multioPage allocator)

MemToLeave保留內存=((CPU數量-4)+256)*0.5+256 約等于384MB

查看Memory CLERK的內存使用情況可調用sys.dm_os_memory_clerks視圖


查看Buffer pool的內存使用情況可調用sys.dm_os_buffer_descriptors視圖

查看各數據庫緩存情況
SELECT
DB_NAME(DS.database_id) AS DatabaseName,
CAST(COUNT(1) *8.0/1024.0 AS INT) UsedMB
FROM sys.dm_os_buffer_descriptors DS
GROUP BY database_id


數據庫使用的總內存:主要由buffer pool中用于緩存的內存+從Buffer pool中借(stolen)的CLERK singlePage的內存+MemToLeave(MultiPage)的內存

SELECT
'SinglePage(MB)',
CAST(SUM(C.single_pages_kb)/1024.0 AS NUMERIC(10,2))
FROM sys.dm_os_memory_clerks C
UNION ALL
SELECT
'MemToLeave(MB)',
CAST(SUM(C.multi_pages_kb)/1024.0  AS NUMERIC(10,2))
FROM sys.dm_os_memory_clerks C
UNION ALL
SELECT
'Buffer Pool(MB)',
CAST(COUNT(1) *8.0/1024.0 AS NUMERIC(10,2)) AS UsedMB
FROM sys.dm_os_buffer_descriptors DS

或者使用性能計數器來查看SQLServer占用的內存
SELECT * FROM sys.sysperfinfo P
WHERE P.object_name LIKE 'SQLServer:Memory Manager%'
AND( P.counter_name LIKE 'Target Server Memory (KB)%'
OR P.counter_name LIKE 'Total Server Memory (KB)%')


Memory Object:
本質上是一個堆,由Page allocator進行分配,使用sys.dm_os_memory_objects來查看,使用page_allocator_address來與標識memory clerk

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

金湖县| 新兴县| 监利县| 会昌县| 大宁县| 璧山县| 蓬莱市| 措勤县| 巴林左旗| 通化县| 夏邑县| 六安市| 鄢陵县| 连南| 淳安县| 丰原市| 庆阳市| 敦煌市| 即墨市| 蕉岭县| 恩施市| 鹤岗市| 遵化市| 略阳县| 富顺县| 祁门县| 蛟河市| 甘泉县| 沂南县| 启东市| 镇雄县| 昆山市| 青河县| 芜湖县| 门源| 濮阳市| 北辰区| 天峨县| 包头市| 乐陵市| 社会|