Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
In-Memory OLTP veritabanı motorunda veritabanı düzeyindeki bellek tüketicilerini raporlar. Görünüm, veritabanı motorunun kullandığı her bellek tüketicisi için bir satır döndürür. Bu DMV'yi kullanarak belleğin farklı dahili nesneler arasında nasıl dağıtıldığını görebilirsiniz.
Daha fazla bilgi için bkz. OLTP'ye genel bakış ve kullanım senaryolarıIn-Memory.
Uyarı
Bu sistem dinamik yönetim görünümünün çıktısı, kurulu SQL Server sürümüne bağlı olarak farklı olabilir.
| Sütun adı | Veri türü | Description |
|---|---|---|
memory_consumer_id |
bigint | Bellek tüketicisinin ID'si (dahil) olarak tanımlanır. |
memory_consumer_type |
int | Bellek tüketicisinin türü: 0 = Toplama. (İki veya daha fazla tüketicinin bellek kullanımını toplar. Gösterilmemeli.) 2 = VARHEAP (Değişken uzunlukta bir yığın için bellek tüketimini takip eder.)3 = HASH (Bir indeks için bellek tüketimini takip eder.)4 = PGPOOL (DB sayfa havuzu: Çalışma zamanı işlemleri için kullanılan bir veritabanı sayfa havuzu için bellek tüketimini izler. Örneğin, tablo değişkenleri ve bazı serileştirilebilir taramalar. Her veritabanı için bu tür bellek tüketicisi yalnızca bir tane vardır.) |
memory_consumer_type_desc |
nvarchar(64) | Bellek tüketicisi türü: VARHEAP, HASH, veya PGPOOL.0 - (Görüntülenmemeli) 2 - VARHEAP3 - HASH4 - PGPOOL |
memory_consumer_desc |
nvarchar(64) | Bellek tüketici örneğinin tanımı. Daha fazla bilgi için aşağıdaki tabloyu inceleyin. |
object_id |
bigint | Tahsis edilen belleğe atrifedilen nesne kimliği. Sistem nesneleri için negatif bir değer. |
xtp_object_id |
bigint | In-Memory OLTP nesne kimliği, bellek optimize edilmiş tabloya karşılık gelir. |
index_id |
int | Tüketicinin (varsa) endeks kimliği. Temel tablolar için NULL. |
allocated_bytes |
bigint | Bu tüketici için ayrılmış bayt sayısı. |
used_bytes |
bigint | Bu tüketici tarafından kullanılan bayt sayısı. Sadece için VARHEAPgeçerlidir. |
allocation_count |
int | Ayırma sayısı. |
partition_count |
int | Yalnızca iç kullanım. |
sizeclass_count |
int | Yalnızca iç kullanım. |
min_sizeclass |
int | Yalnızca iç kullanım. |
max_sizeclass |
int | Yalnızca iç kullanım. |
memory_consumer_address |
varbinary | Tüketicinin iç adresi. Yalnızca dahili kullanım için. |
Aşağıdaki tablo, sütunda belirtilen memory_consumer_type bellek tüketicilerini tanımlar:
| Bellek tüketicisi | Description | Türü |
|---|---|---|
256K page pool |
Kontrol noktası aktivitesi sırasında kullanılan bellek havuzu. | PGPOOL |
4K page pool |
Kontrol noktası aktivitesi sırasında kullanılan bellek havuzu. | PGPOOL |
Checkpoint table |
Yalnızca iç kullanım. | VARHEAP |
Ckpt file table |
Yalnızca iç kullanım. | VARHEAP |
Ckpt file watermark table |
Yalnızca iç kullanım. | VARHEAP |
Database internal heap |
Bellek dökümlerine dahil edilen ve kullanıcı verisini içermeyen veritabanı verilerini tahsis etmek için kullanılır. | VARHEAP |
Database user heap |
Bir veritabanı (satırlar) için kullanıcı verilerini tahsis etmek için kullanılır. | VARHEAP |
Encryption table |
Yalnızca iç kullanım. | VARHEAP |
Hash index |
Bir indeks için bellek tüketimini takip eder. Tabloyu object_id ve hash indeksinin kendisini index_id gösterir. |
HASH |
Large Rows File table |
Yalnızca iç kullanım. | VARHEAP |
LOB Page Allocator |
Büyük sıralar tarafından kullanılan yığın bellek. | VARHEAP |
Logical range index partition table |
Yalnızca iç kullanım. | VARHEAP |
Logical root fragment table |
Yalnızca iç kullanım. | VARHEAP |
Logical Root table |
Yalnızca iç kullanım. | VARHEAP |
Logical Sequence Object table |
Yalnızca iç kullanım. | VARHEAP |
Physical range index partition table |
Yalnızca iç kullanım. | VARHEAP |
Physical root fragment table |
Yalnızca iç kullanım. | VARHEAP |
Physical Root table |
Yalnızca iç kullanım. | VARHEAP |
Physical Sequence object table |
Yalnızca iç kullanım. | VARHEAP |
Range index heap |
Bw-tree sayfalarını tahsis etmek için aralık indeksi tarafından kullanılan özel yığın. | VARHEAP |
Storage internal heap |
Yalnızca iç kullanım. | VARHEAP |
Storage user heap |
Yalnızca iç kullanım. | VARHEAP |
Table heap |
In-Memory tablolar tarafından kullanılan yığın bellek. | VARHEAP |
Tail cache 256K page pool |
Yalnızca iç kullanım. | PGPOOL |
Tx Segment table |
Yalnızca iç kullanım. | VARHEAP |
Açıklamalar
Bellek optimize edilmiş bir tabloda columnstore indeksi olduğunda, sistem columnstore indeksi için verileri takip etmek için bazı dahili tablolar kullanır; bu tablolar bellek tüketir. Bu iç tablolar ve bellek tüketimini gösteren örnek sorgular hakkında detaylar için sys.memory_optimized_tables_internal_attributes (Transact-SQL) bkz.
Permissions
Mevcut veritabanında VIEW DATABASE STATE izniniz varsa tüm satırlar döner. Aksi takdirde, boş bir satır kümesi geri döner.
VIEW DATABASE izniniz yoksa, SELECT izniniz olan tablolardaki tüm sütunlar döner.
SQL Server 2019 (15.x) ve önceki sürümlerde, sistem tabloları yalnızca VIEW DATABASE STATE iznine sahip kullanıcılar için döndürülür.
SQL Server 2022 (16.x) ve sonraki sürümler için, veritabanında VIEW DATABASE PERFORMANCE STATE izni gereklidir.
Örnekler
Mevcut veritabanındaki sorgu belleği tüketicileri
Aşağıdaki sorgu, bellek optimize edilmiş tabloları içeren örnek WideWorldImporters veritabanına karşı çalıştırın:
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;
Sonuç kümesi aşağıdadır.
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
Bu DMV'den tahsis edilen ve kullanılan toplam bellek, sys.dm_db_xtp_table_memory_stats'daki nesne seviyesiyle aynıdır.
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;
Sonuç kümesi aşağıdadır.
total_allocated_MB total_used_MB
------------------ --------------------
92 51
İlgili içerik
- Bellek-Optimize Edilmiş Tablolara Giriş
- Memory-Optimized Tablo Dinamik Yönetim Görünümleri (Transact-SQL)
- In-Memory OLTP'ye genel bakış ve kullanım senaryoları
- Azure SQL Veritabanı bellek içi teknolojileri kullanarak performansı iyileştirme
- Azure SQL Yönetilen Örneği'nde bellek içi teknolojileri kullanarak performansı iyileştirme