Memantau Memory-Optimized System-Versioned Tabel Temporal
Berlaku untuk: SQL Server 2016 (13.x) dan database
Azure SQL yang lebih baru
Azure SQL Managed Instance
Anda dapat menggunakan tampilan yang ada untuk melacak konsumsi memori terperinci dan ringkasan untuk setiap tabel yang dioptimalkan memori versi sistem.
Konsumsi memori terperinci (pisahkan per tabel penahapan versi sistem utama dan riwayat internal):
--Details of memory consumption
WITH InMemoryTemporalTables
AS
(
SELECT SCHEMA_NAME ( T1.schema_id ) AS TemporalTableSchema
, T1.object_id AS TemporalTableObjectId
, IT.object_id AS InternalTableObjectId
, OBJECT_NAME ( IT.parent_object_id ) AS TemporalTableName
, IT.Name AS InternalHistoryStagingName
FROM sys.internal_tables IT
JOIN sys.tables T1 ON IT.parent_object_id = T1.object_id
WHERE T1.is_memory_optimized = 1 AND T1.temporal_type = 2
)
SELECT
TemporalTableSchema
, T.TemporalTableName
, T.InternalHistoryStagingName,
CASE
WHEN C.object_id = T.TemporalTableObjectId
THEN 'Temporal Table Consumption'
ELSE 'Internal Table Consumption'
END ConsumedBy
, C.*
FROM sys.dm_db_xtp_memory_consumers C
JOIN InMemoryTemporalTables T
ON C.object_id = T.TemporalTableObjectId OR C.object_id = T.InternalTableObjectId
WHERE T.TemporalTableSchema = 'dbo' AND T.TemporalTableName = 'FXCurrencyPairs'
;
Ringkasan konsumsi memori (total untuk tabel yang dioptimalkan memori versi sistem):
--Summary of memory consumption
WITH InMemoryTemporalTables
AS
(
SELECT SCHEMA_NAME ( T1.schema_id ) AS TemporalTableSchema
, T1.object_id AS TemporalTableObjectId
, IT.object_id AS InternalTableObjectId
, OBJECT_NAME ( IT.parent_object_id ) AS TemporalTableName
, IT.Name AS InternalHistoryStagingName
FROM sys.internal_tables IT
JOIN sys.tables T1 ON IT.parent_object_id = T1.object_id
WHERE T1.is_memory_optimized = 1 AND T1.temporal_type = 2
)
, DetailedConsumption
AS
(
SELECT TemporalTableSchema
, T.TemporalTableName
, T.InternalHistoryStagingName
, CASE
WHEN C.object_id = T.TemporalTableObjectId
THEN 'Temporal Table Consumption'
ELSE 'Internal Table Consumption'
END ConsumedBy
, C.*
FROM sys.dm_db_xtp_memory_consumers C
JOIN InMemoryTemporalTables T
ON C.object_id = T.TemporalTableObjectId OR C.object_id = T.InternalTableObjectId
)
SELECT TemporalTableSchema
TemporalTableName
, sum ( allocated_bytes ) AS allocated_bytes
, sum ( used_bytes ) AS used_bytes
FROM DetailedConsumption
WHERE TemporalTableSchema = 'dbo' ANDTemporalTableName = 'FXCurrencyPairs'
GROUP BY TemporalTableSchema, TemporalTableName
;
Lihat juga
- Tabel Temporal Versi Sistem dengan Tabel Memory-Optimized
- Membuat Tabel Temporal Memory-Optimized System-Versioned
- Bekerja dengan Tabel Temporal Memory-Optimized System-Versioned
- Pertimbangan Performa dengan Tabel Temporal Memory-Optimized System-Versioned
- Tabel Temporal
- Pemeriksaan Konsistensi Sistem Tabel Temporal
- Mengelola Retensi Data Historis dalam Tabel Temporal System-Versioned
- Tampilan dan Fungsi Metadata Tabel Temporal
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk