Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Jelentése az adatbázis-szintű memóriafogyasztóknak a In-Memory OLTP adatbázis motorban. A nézet minden memóriafogyasztó számára egy sort ad vissza, amelyet az adatbázis motor használ. Használd ezt a DMV-t, hogy megnézd, hogyan oszlik el a memória különböző belső objektumok között.
További információ: In-Memory OLTP áttekintése és használati forgatókönyvei.
Megjegyzés:
Ennek a rendszerdinamikus menedzsment nézetnek a kimenete eltérő lehet, attól függően, melyik SQL Server verziója telepített.
| Oszlop név | Adattípus | Description |
|---|---|---|
memory_consumer_id |
bigint | A memóriafogyasztó azonosítója (internal). |
memory_consumer_type |
int | A memóriafogyasztó típusa: 0 = aggregáció. (Két vagy több felhasználó memóriahasználatát összesíti. Nem szabadna megjeleníteni.) 2 = VARHEAP (Követi a memóriafogyasztást egy változó hosszúságú halom esetén.)3 = HASH (Követi az index memóriafogyasztását.)4 = PGPOOL (DB page pool: Követi a memóriaigényt egy futási idejű műveletekhez használt adatbázis oldalpoolhoz. Például táblázatváltozók és néhány serializálható szkennelés is. Adatbázisonként csak egy ilyen típusú memóriafogyasztó létezik.) |
memory_consumer_type_desc |
nvarchar(64) | Memóriafogyasztó típusa: VARHEAP, HASH, vagy PGPOOL.0 - (Nem szabadna megjeleníteni) 2 - VARHEAP3 - HASH4 - PGPOOL |
memory_consumer_desc |
nvarchar(64) | A memóriafogyasztó példány leírása. További információért tekintse meg az alábbi táblázatot. |
object_id |
bigint | Az objektumazonosító, amelyhez a kijelölt memóriát hozzáruházják. Negatív érték a rendszerobjektumokra. |
xtp_object_id |
bigint | A In-Memory OLTP objektumazonosító, amely megfelel a memóriaoptimalizált táblának. |
index_id |
int | A fogyasztó indexazonosítója (ha van ilyen). NULL az alaptábláknál. |
allocated_bytes |
bigint | A fogyasztó számára fenntartott bájtok száma. |
used_bytes |
bigint | A fogyasztó által használt bájtok. Csak a VARHEAP. |
allocation_count |
int | Foglalások száma. |
partition_count |
int | Csak belső használatra. |
sizeclass_count |
int | Csak belső használatra. |
min_sizeclass |
int | Csak belső használatra. |
max_sizeclass |
int | Csak belső használatra. |
memory_consumer_address |
varbinary | A fogyasztó belső címe. Csak belső használatra. |
Az alábbi táblázat írja le az oszlopban megadott memóriafogyasztókat memory_consumer_type :
| Memóriafogyasztó | Description | Típus |
|---|---|---|
256K page pool |
Memória medencé, amelyet ellenőrzőpont-aktivitás közben használnak. | PGPOOL |
4K page pool |
Memória medencé, amelyet ellenőrzőpont-aktivitás közben használnak. | PGPOOL |
Checkpoint table |
Csak belső használatra. | VARHEAP |
Ckpt file table |
Csak belső használatra. | VARHEAP |
Ckpt file watermark table |
Csak belső használatra. | VARHEAP |
Database internal heap |
Olyan adatbázis-adatok kiosztására használják, amelyek memóriadumpokban vannak, és nem tartalmazzák a felhasználói adatokat. | VARHEAP |
Database user heap |
Felhasználói adatok (sorok) elosztására használják. | VARHEAP |
Encryption table |
Csak belső használatra. | VARHEAP |
Hash index |
Követi az index memóriafogyasztását. A object_id táblázatot és index_id magát a hash indexet jelzi. |
HASH |
Large Rows File table |
Csak belső használatra. | VARHEAP |
LOB Page Allocator |
Nagy sorok halommemória használata. | VARHEAP |
Logical range index partition table |
Csak belső használatra. | VARHEAP |
Logical root fragment table |
Csak belső használatra. | VARHEAP |
Logical Root table |
Csak belső használatra. | VARHEAP |
Logical Sequence Object table |
Csak belső használatra. | VARHEAP |
Physical range index partition table |
Csak belső használatra. | VARHEAP |
Physical root fragment table |
Csak belső használatra. | VARHEAP |
Physical Root table |
Csak belső használatra. | VARHEAP |
Physical Sequence object table |
Csak belső használatra. | VARHEAP |
Range index heap |
Magánhalom, amelyet a tartományindex, a Bw-fa oldalak kijelölésére. | VARHEAP |
Storage internal heap |
Csak belső használatra. | VARHEAP |
Storage user heap |
Csak belső használatra. | VARHEAP |
Table heap |
A In-Memory táblák által használt halom memória. | VARHEAP |
Tail cache 256K page pool |
Csak belső használatra. | PGPOOL |
Tx Segment table |
Csak belső használatra. | VARHEAP |
Megjegyzések
Amikor egy memóriaoptimalizált táblának columnstore indexe van, a rendszer belső táblákat használ, amelyek némi memóriát fogyasztanak az oszloptároló index adatainak nyomon követésére. A belső táblákról és a memóriafogyasztásukat bemutató mintalekérdezésekről a sys.memory_optimized_tables_internal_attributes (Transact-SQL) oldalon olvasható.
Permissions
Minden sor visszatér, ha a jelenlegi adatbázisban VIEW DATABASE STATE engedélyed van. Ellenkező esetben egy üres sorhalmaz jelenik meg.
Ha nincs VIEW DATABASE engedélyed, akkor minden oszlop visszakerül azokhoz a sorokhoz a táblázatokban, amelyekre SELECT engedélyed van.
SQL Server 2019 (15.x) és korábbi verziókban a rendszertáblák csak a VIEW DATABASE STATE jogosult felhasználók számára jelennek meg.
SQL Server 2022 (16.x) és újabb verziók esetén VIEW DATABASE PERFORMANCE STATE engedélyre van szükség az adatbázison.
Példák
Lekérdezés memóriafogyasztókra a jelenlegi adatbázisban
Futtassuk le a következő lekérdezést a mintaadatbázis WideWorldImporters ellen, amely memóriaoptimalizált táblákat tartalmaz:
SELECT CONVERT(CHAR(10), OBJECT_NAME(object_id)) AS Name,
memory_consumer_type_desc,
memory_consumer_desc,
object_id,
index_id,
allocated_bytes,
used_bytes
FROM sys.dm_db_xtp_memory_consumers;
Itt van az eredmények összessége.
Name memory_consumer_type_desc memory_consumer_desc object_id index_id allocated_bytes used_bytes
---------- ------------------------- -------------------------------------- ----------- ----------- ----------------- ------------
NULL VARHEAP Range index heap -15 1 131072 176
NULL VARHEAP Physical range index partition table -15 NULL 0 0
NULL VARHEAP Range index heap -14 2 131072 192
NULL VARHEAP Range index heap -14 1 131072 208
NULL VARHEAP Large Rows File table -14 NULL 0 0
NULL HASH Hash index -13 1 2048 2048
NULL VARHEAP Encryption table -13 NULL 0 0
NULL HASH Hash index -10 2 32768 32768
NULL HASH Hash index -10 1 32768 32768
NULL VARHEAP Tx Segment table -10 NULL 65536 544
NULL HASH Hash index -11 1 32768 32768
NULL VARHEAP Checkpoint table -11 NULL 131072 320
NULL HASH Hash index -12 1 8192 8192
NULL VARHEAP Ckpt file table -12 NULL 131072 3120
NULL HASH Hash index -9 1 2048 2048
NULL VARHEAP Ckpt file watermark table -9 NULL 131072 1280
NULL VARHEAP Range index heap -7 1 262144 976
NULL VARHEAP Physical Sequence Object table -7 NULL 65536 864
NULL HASH Hash index -3 1 2048 2048
NULL VARHEAP Physical root fragment table -3 NULL 0 0
NULL HASH Hash index 0 2 8192 8192
NULL HASH Hash index 0 1 32768 32768
NULL VARHEAP Physical Root table NULL NULL 327680 12160
NULL PGPOOL Tail cache 256K page pool 0 NULL 262144 262144
NULL PGPOOL 256K page pool 0 NULL 35389440 18874368
NULL PGPOOL 64K page pool 0 NULL 131072 65536
NULL PGPOOL 4K page pool 0 NULL 49152 40960
NULL VARHEAP Storage internal heap NULL NULL 786432 4816
NULL VARHEAP Storage user heap NULL NULL 262144 22496
ColdRoomTe VARHEAP Range index heap 1179151246 3 196608 800
ColdRoomTe VARHEAP Range index heap 1179151246 2 196608 800
memory_opt VARHEAP Range index heap 1211151360 2 131072 208
VehicleTem VARHEAP Range index heap 1243151474 2 11796480 1181824
ColdRoomTe VARHEAP Table heap 1179151246 NULL 65536 384
memory_opt VARHEAP Table heap 1211151360 NULL 0 0
VehicleTem VARHEAP Table heap 1243151474 NULL 33423360 32802112
VehicleTem VARHEAP Range index heap 1243151474 2 131072 160
VehicleTem VARHEAP LOB Page Allocator 1243151474 NULL 0 0
VehicleTem VARHEAP Table heap 1243151474 NULL 0 0
NULL VARHEAP Range index heap -15 1 327680 176
NULL VARHEAP Logical range index partition table -15 NULL 0 0
NULL HASH Hash index -7 1 32768 32768
NULL VARHEAP Logical Sequence Object table -7 NULL 65536 600
NULL HASH Hash index -3 1 2048 2048
NULL VARHEAP Logical root fragment table -3 NULL 0 0
NULL HASH Hash index 0 1 32768 32768
NULL VARHEAP Logical Root table NULL NULL 327680 11120
NULL PGPOOL Tail cache 256K page pool 0 NULL 262144 0
NULL PGPOOL 256K page pool 0 NULL 10485760 0
NULL PGPOOL 64K page pool 0 NULL 131072 0
NULL PGPOOL 4K page pool 0 NULL 32768 0
NULL VARHEAP Database internal heap NULL NULL 1048576 8016
NULL VARHEAP Database user heap NULL NULL 65536 1024
A DMV-ből kiosztott és használt teljes memória megegyezik az sys.dm_db_xtp_table_memory_stats objektum szintjével.
SELECT SUM(allocated_bytes) / (1024 * 1024) AS total_allocated_MB,
SUM(used_bytes) / (1024 * 1024) AS total_used_MB
FROM sys.dm_db_xtp_memory_consumers;
Itt van az eredmények összessége.
total_allocated_MB total_used_MB
------------------ --------------------
92 51
Kapcsolódó tartalom
- Bevezetés a Memory-Optimized-táblák használatába
- Memory-Optimized Table Dynamic Management Views (Transact-SQL)
- In-Memory OLTP áttekintése és használati forgatókönyvei
- Teljesítmény optimalizálása memóriabeli technológiákkal az Azure SQL Database
- Teljesítmény optimalizálása memóriabeli technológiákkal a felügyelt Azure SQL-példányokban