sys.dm_os_memory_clerks (Transact-SQL)
適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
SQL Server のインスタンスで現在アクティブになっているすべてのメモリ クラークのセットを返します。
Note
これを Azure Synapse Analytics または Analytics Platform System (PDW) から呼び出すには、 sys.dm_pdw_nodes_os_memory_clerksという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。
列名 | データ型 | 説明 |
---|---|---|
memory_clerk_address | varbinary(8) | メモリ クラークの一意のメモリ アドレスを指定します。 これは主キー列です。 NULL 値は許可されません。 |
type | nvarchar(60) | メモリ クラークの種類を指定します。 各クラークには、CLR Clerks MEMORYCLERK_SQLCLR などの特定の種類があります。 NULL 値は許可されません。 |
name | nvarchar (256) | このメモリ クラークに内部的に割り当てられた名前を指定します。 コンポーネントには、特定の種類のメモリ クラークを複数含めることができます。 同じ種類のメモリ クラークを識別するために、コンポーネントで特定の名前を選択して使用することもできます。 NULL 値は許可されません。 |
memory_node_id | smallint | メモリ ノードの ID を指定します。 NULL 値は許可されません。 |
single_pages_kb | bigint | 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。 詳細については、「 SQL Server 2012 (11.x)以降のメモリ管理への変更」を参照してください。 |
pages_kb | bigint | 適用対象: SQL Server 2012 (11.x) 以降。 このメモリ クラークに割り当てられるページ メモリの量を KB 単位で指定します。 NULL 値は許可されません。 |
multi_pages_kb | bigint | 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。 詳細については、「 SQL Server 2012 (11.x)以降のメモリ管理への変更」を参照してください。 割り当てられたマルチページ メモリの量 (KB 単位)。 これは、メモリ ノードの複数ページ アロケーターを使用して割り当てられたメモリの量です。 このメモリは、バッファー プール外に割り当てられ、メモリ ノードの仮想アロケーターを利用します。 NULL 値は許可されません。 |
virtual_memory_reserved_kb | bigint | メモリ クラークによって予約される仮想メモリの量を指定します。 NULL 値は許可されません。 |
virtual_memory_committed_kb | bigint | メモリ クラークによってコミットされる仮想メモリの量を指定します。 コミット済みのメモリ量は、予約済みのメモリ量よりも常に少ない状態である必要があります。 NULL 値は許可されません。 |
awe_allocated_kb | bigint | 物理メモリでロックされ、オペレーティング システムによってページングされないメモリの量を KB 単位で指定します。 NULL 値は許可されません。 |
shared_memory_reserved_kb | bigint | メモリ クラークによって予約される共有メモリの量を指定します。 共有メモリおよびファイル マッピングで使用するために予約されるメモリの量です。 NULL 値は許可されません。 |
shared_memory_committed_kb | bigint | メモリ クラークによってコミット済みの共有メモリの量を指定します。 NULL 値は許可されません。 |
page_size_in_bytes | bigint | このメモリ クラークのページ割り当ての粒度を指定します。 NULL 値は許可されません。 |
page_allocator_address | varbinary(8) | ページ アロケーターのアドレスを指定します。 このアドレスはメモリ クラークに対して一意であり、 sys.dm_os_memory_objects で使用して、このクラークにバインドされているメモリ オブジェクトを見つけることができます。 NULL 値は許可されません。 |
host_address | varbinary(8) | このメモリ クラークのホストのメモリ アドレスを指定します。 詳細については、「 sys.dm_os_hosts (Transact-SQL)」を参照してください。 Microsoft SQL Server Native Client などのコンポーネントは、ホスト インターフェイスを介して SQL Server メモリ リソースにアクセスします。 0x00000000 = メモリ クラークは SQL Server に属しています。 NULL 値は許可されません。 |
pdw_node_id | int | 適用対象: Azure Synapse Analytics、Analytics Platform System (PDW) このディストリビューションがオンになっているノードの識別子。 |
アクセス許可
SQL Server では、VIEW SERVER STATE
権限が必要です。
Azure SQL Database Basic、S0、S1 サービス目標、およびエラスティック プール内のデータベースの場合は、 server admin アカウントまたは Microsoft Entra admin アカウントが必要です。 他のすべての Azure SQL Database サービス目標では、データベースに VIEW DATABASE STATE
アクセス許可が必要です。
SQL Server 2022 以降でのアクセス許可
サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。
解説
SQL Server メモリ マネージャーは、3 層階層で構成されます。 階層の下部にはメモリ ノードがあります。 中間レベルは、メモリ クラーク、メモリ キャッシュ、メモリ プールで構成されます。 最上位の階層はメモリ オブジェクトから成ります。 これらのオブジェクトは、SQL Server のインスタンスにメモリを割り当てるために使用されます。
メモリ ノードは、低レベルのアロケーターのインターフェイスと実装を提供します。 SQL Server 内では、メモリ クラークのみがメモリ ノードにアクセスできます。 メモリ クラークはメモリ ノード インターフェイスにアクセスしてメモリを割り当てます。 メモリ ノードは、診断にクラークを使用して割り当てられたメモリも追跡します。 大量のメモリを割り当てるすべてのコンポーネントは、独自のメモリ クラークを作成し、クラーク インターフェイスを使用してすべてのメモリを割り当てる必要があります。 多くの場合、コンポーネントは、SQL Server の起動時に対応するクラークを作成します。
CACHESTORE と USERSTORE
CACHESTORE と USERSTORE はメモリ クラークですが、実際のキャッシュとして機能します。 通常、キャッシュ削除ポリシーがそれらの割り当てを解放するまで、キャッシュは割り当てを保持します。 再作成を回避するために、キャッシュされた割り当ては可能な限りキャッシュに保持され、通常は古すぎて有用でない場合や、新しい情報にメモリ領域が必要な場合にキャッシュから削除されます (詳細については、「 clock ハンド スイープを参照してください)。 これは、キャッシュの 2 つの主要なコントロールの 1 つです。有効期間の制御と可視性の制御です。
キャッシュ ストアとユーザー ストアは、割り当ての有効期間を制御する方法が異なります。 キャッシュ ストアの場合、エントリの有効期間は SQLOS のキャッシュ フレームワークによって完全に制御されます。 ユーザー ストアでは、エントリの有効期間はストアによって部分的にのみ制御されます。 各ユーザー ストアの実装はメモリ割り当ての性質に固有である可能性があるため、ユーザー ストアはエントリの有効期間制御に参加します。
可視性コントロールは、エントリの可視性を管理します。 キャッシュ内のエントリは存在できますが、表示されない可能性があります。 たとえば、キャッシュ エントリが 1 回の使用専用としてマークされている場合、そのエントリは使用後に表示されません。 さらに、キャッシュ エントリはダーティとしてマークされる可能性があります。キャッシュに引き続き存在しますが、参照には表示されません。 どちらのストアでも、エントリの可視性はキャッシュ フレームワークによって制御されます。
詳細については、「 SQLOS キャッシュ」を参照してください。
OBJECTSTORE
オブジェクト ストアは単純なプールです。 同種データをキャッシュするために使用されます。 プール内のすべてのエントリは等しいと見なされます。 オブジェクト ストアは、他のキャッシュに対する相対的なサイズを制御するための最大上限を実装します。
詳細については、「 SQLOS キャッシュ」を参照してください。
種類
次の表に、メモリ クラークの種類を示します。
型 | 説明 |
---|---|
CACHESTORE_BROKERDSH | このキャッシュ ストアは、 Service Broker ダイアログ セキュリティ ヘッダー キャッシュによる割り当てを格納するために使用されます。 |
CACHESTORE_BROKERKEK | このキャッシュ ストアは、 Service Broker Key Exchange キー キャッシュによる割り当てを格納するために使用されます。 |
CACHESTORE_BROKERREADONLY | このキャッシュ ストアは、 Service Broker 読み取り専用キャッシュによる割り当てを格納するために使用されます。 |
CACHESTORE_BROKERRSB | このキャッシュ ストアは、 Service Broker Remote Service Binding Cache による割り当てを格納するために使用されます。 |
CACHESTORE_BROKERTBLACS | このキャッシュ ストアは、 Service Broker によるセキュリティ アクセス構造の割り当てを格納するために使用されます。 |
CACHESTORE_BROKERTO | このキャッシュ ストアは、 Service Broker Transmission オブジェクト Cache による割り当てを格納するために使用されます。 |
CACHESTORE_BROKERUSERCERTLOOKUP | このキャッシュ ストアは、 Service Broker ユーザー証明書参照キャッシュによる割り当てを格納するために使用されます。 |
CACHESTORE_COLUMNSTOREOBJECTPOOL | このキャッシュ ストアは、Columnstore インデックスによる割り当てセグメントおよびクエリに使用されます。 |
CACHESTORE_CONVPRI | このキャッシュ ストアは、 Service Broker によって割り当てを格納するために使用され、 Conversations の優先順位を追跡します |
CACHESTORE_EVENTS | このキャッシュ ストアは、 Service Broker Event Notifications による割り当てを格納するために使用されます。 |
CACHESTORE_FULLTEXTSTOPLIST | このメモリ クラークは、 ストップ リスト 機能のフルテキスト エンジンによる割り当てに使用されます。 |
CACHESTORE_NOTIF | このキャッシュ ストアは、 Query 通知 機能による割り当てに使用されます |
CACHESTORE_OBJCP | このキャッシュ ストアは、コンパイル済みプラン (CP): ストアド プロシージャ、関数、トリガーを使用してオブジェクトをキャッシュするために使用されます。 たとえば、ストアド プロシージャのクエリ プランが作成された後、そのプランはこのキャッシュに格納されます。 |
CACHESTORE_PHDR | このキャッシュ ストアは、ビュー、制約、およびクエリのコンパイル中に既定のアルゲブライザー ツリーの解析中に一時的なメモリ キャッシュに使用されます。 クエリが解析されたら、メモリを解放する必要があります。 たとえば、1 つのバッチ内の多数のステートメント (1 つのバッチへの数千の挿入または更新、大規模な動的に生成されたクエリを含む T-SQL バッチ、IN 句内の多数の値) などがあります。 |
CACHESTORE_QDSRUNTIMESTATS | このキャッシュ ストアは、ランタイム統計クエリ ストアキャッシュするために使用されます |
CACHESTORE_SEARCHPROPERTYLIST | このキャッシュ ストアは、 Property List Cache のフルテキスト エンジンによる割り当てに使用されます。 |
CACHESTORE_SEHOBTCOLUMNATTRIBUTE | このキャッシュ ストアは、ヒープまたは B ツリー (HoBT) 列のメタデータ構造をキャッシュするためにストレージ エンジンによって使用されます。 |
CACHESTORE_SQLCP | このキャッシュ ストアは、プラン キャッシュ内のアドホック クエリ、準備されたステートメント、およびサーバー側カーソルをキャッシュするために使用されます。 アドホック クエリは、通常、明示的なパラメーター化なしでサーバーに送信される言語イベント T-SQL ステートメントです。 準備されたステートメントもこのキャッシュ ストアを使用します。これらは、 SQLPrepare()/ SQLExecute (ODBC) や SqlCommand.Prepare/SqlCommand.ExecuteNonQuery (ADO.NET) などの API 呼び出しを使用してアプリケーションによって送信され、 sp_prepare/sp_execute または sp_prepexec システム プロシージャの実行としてサーバーに表示されます。 また、サーバー側カーソルは、このキャッシュ ストア (sp_cursoropen、 sp_cursorfetch、 sp_cursorclose) から使用されます。 |
CACHESTORE_STACKFRAMES | このキャッシュ ストアは、スタック フレームに関連する内部 SQL OS 構造体の割り当てに使用されます。 |
CACHESTORE_SYSTEMROWSET | このキャッシュ ストアは、トランザクションログと復旧に関連する内部構造の割り当てに使用されます。 |
CACHESTORE_TEMPTABLES | このキャッシュ ストアは、プラン キャッシュの一部である テーブルとテーブル変数のキャッシュ に関連する割り当てに使用されます。 |
CACHESTORE_VIEWDEFINITIONS | このキャッシュ ストアは、クエリの最適化の一環としてビュー定義をキャッシュするために使用されます。 |
CACHESTORE_XML_SELECTIVE_DG | このキャッシュ ストアは、XML 処理のために XML 構造をキャッシュするために使用されます。 |
CACHESTORE_XMLDBATTRIBUTE | このキャッシュ ストアは、 XQuery などの XML アクティビティの XML 属性構造をキャッシュするために使用されます。 |
CACHESTORE_XMLDBELEMENT | このキャッシュ ストアは、 XQuery などの XML アクティビティの XML 要素構造をキャッシュするために使用されます。 |
CACHESTORE_XMLDBTYPE | このキャッシュ ストアは、XQuery などの XML アクティビティの XML 構造をキャッシュするために使用されます。 |
CACHESTORE_XPROC | このキャッシュ ストアは、プラン キャッシュ内の Extended ストアド プロシージャ (Xprocs) の構造体をキャッシュするために使用されます。 |
MEMORYCLERK_BACKUP | このメモリ クラークは、 Backup 機能によってさまざまな割り当てに使用されます |
MEMORYCLERK_BHF | このメモリ クラークは、クエリの実行中にバイナリ ラージ オブジェクト (BLOB) 管理の割り当てに使用されます (BLOB ハンドルのサポート) |
MEMORYCLERK_BITMAP | このメモリ クラークは、ビットマップ フィルター処理のための SQL OS 機能による割り当てに使用されます |
MEMORYCLERK_CSILOBCOMPRESSION | このメモリ クラークは、 Columnstore Index バイナリ ラージ オブジェクト (BLOB) 圧縮による割り当てに使用されます |
MEMORYCLERK_DRTLHEAP | このメモリ クラークは、SQL OS 機能による割り当てに使用されます 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_EXPOOL | このメモリ クラークは、SQL OS 機能による割り当てに使用されます 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_EXTERNAL_EXTRACTORS | このメモリ クラークは、バッチ モードのクエリ実行エンジンによる割り当てに使用されます 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_FILETABLE | このメモリ クラークは、 FileTables 機能によってさまざまな割り当てに使用されます。 |
MEMORYCLERK_FSAGENT | このメモリー・クラークは、 FILESTREAM 機能によるさまざまな割り当てに使用されます。 |
MEMORYCLERK_FSCHUNKER | このメモリ クラークは、filestream チャンクを作成するための FILESTREAM 機能によってさまざまな割り当てに使用されます。 |
MEMORYCLERK_FULLTEXT | このメモリ クラークは、フルテキスト エンジン構造による割り当てに使用されます。 |
MEMORYCLERK_FULLTEXT_SHMEM | このメモリ クラークは、フルテキスト デーモン プロセスとの共有メモリ接続に関連するフルテキスト エンジン構造による割り当てに使用されます。 |
MEMORYCLERK_HADR | このメモリ クラークは、Always On 機能によるメモリ割り当てに使用されます |
MEMORYCLERK_HOST | このメモリ クラークは、SQL OS 機能による割り当てに使用されます。 |
MEMORYCLERK_LANGSVC | このメモリ クラークは、SQL T-SQL ステートメントおよびコマンド (パーサー、アルゲブライザーなど) による割り当てに使用されます。 |
MEMORYCLERK_LWC | このメモリ クラークは、フルテキスト Semantic Search エンジンによる割り当てに使用されます。 |
MEMORYCLERK_POLYBASE | このメモリ クラークは、SQL Server 内の PolyBase 機能のメモリ割り当てを追跡します。 |
MEMORYCLERK_QSRANGEPREFETCH | このメモリ クラークは、クエリ スキャン範囲プリフェッチのクエリ実行中の割り当てに使用されます。 |
MEMORYCLERK_QUERYDISKSTORE | このメモリ クラークは、SQL Server 内のクエリ ストアメモリ割り当てによって使用されます。 |
MEMORYCLERK_QUERYDISKSTORE_HASHMAP | このメモリ クラークは、SQL Server 内のクエリ ストアメモリ割り当てによって使用されます。 |
MEMORYCLERK_QUERYDISKSTORE_STATS | このメモリ クラークは、SQL Server 内のクエリ ストアメモリ割り当てによって使用されます。 |
MEMORYCLERK_QUERYPROFILE | このメモリ クラークは、サーバーの起動時にクエリ プロファイルを有効にするために使用されます 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_RTLHEAP | このメモリ クラークは、SQL OS 機能による割り当てに使用されます。 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_SECURITYAPI | このメモリ クラークは、SQL OS 機能による割り当てに使用されます。 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_SERIALIZATION | 内部でのみ使用されます |
MEMORYCLERK_SLOG | このメモリ クラークは、 Accelerated Database Recovery の sLog (セカンダリインメモリ ログ ストリーム) による割り当てに使用されます 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_SNI | このメモリ クラークは、サーバー ネットワーク インターフェイス (SNI) コンポーネントにメモリを割り当てます。 SNI は、SQL Server の接続と TDS パケットを管理します |
MEMORYCLERK_SOSMEMMANAGER | このメモリ クラークは、SQLOS (SOS) スレッドのスケジューリングとメモリおよび I/O 管理用の構造体を割り当てます。 |
MEMORYCLERK_SOSNODE | このメモリ クラークは、SQLOS (SOS) スレッドのスケジューリングとメモリおよび I/O 管理用の構造体を割り当てます。 |
MEMORYCLERK_SOSOS | このメモリ クラークは、SQLOS (SOS) スレッドのスケジューリングとメモリおよび I/O 管理用の構造体を割り当てます。 |
MEMORYCLERK_SPATIAL | このメモリ クラークは、 Spatial Data コンポーネントによってメモリ割り当てに使用されます。 |
MEMORYCLERK_SQLBUFFERPOOL | このメモリ クラークは、SQL Server 内で一般的に最大のメモリ コンシューマー (データ ページとインデックス ページ) を追跡します。 バッファー プールまたはデータ キャッシュでは、データとインデックス ページがメモリに読み込まれ、データへの高速アクセスを提供します。 詳細については「バッファー管理」を参照してください。 |
MEMORYCLERK_SQLCLR | このメモリ クラークは、 SQLCLR による割り当てに使用されます。 |
MEMORYCLERK_SQLCLRASSEMBLY | このメモリ クラークは、 SQLCLR アセンブリの割り当てに使用されます。 |
MEMORYCLERK_SQLCONNECTIONPOOL | このメモリ・クラークは、クライアント・アプリケーションがサーバーを追跡するために必要とする可能性があるサーバー上の情報をキャッシュします。 1 つの例として、 sp_prepexecrpcを使用して準備ハンドルを作成するアプリケーションがあります。 アプリケーションは、実行後にこれらのハンドルを適切に準備解除 (閉じる) する必要があります。 |
MEMORYCLERK_SQLEXTENSIBILITY | このメモリ クラークは、SQL Server で外部の Python または R スクリプトを実行するためにExtensibility Framework による割り当てに使用されます。 適用対象: SQL Server 2019 (15.x) 以降 |
MEMORYCLERK_SQLGENERAL | このメモリ クラークは、SQL エンジン内の複数のコンシューマーで使用できます。 たとえば、レプリケーション メモリ、内部デバッグ/診断、一部の SQL Server スタートアップ機能、一部の SQL パーサー機能、システム インデックスの構築、グローバル メモリ オブジェクトの初期化、サーバーとリンク サーバーのクエリ内での OLEDB 接続の作成、サーバー側 Profiler トレース、プラン表示データの作成、セキュリティ機能、計算列のコンパイル、並列処理構造のメモリ、一部の XML 機能のメモリなどがあります。 |
MEMORYCLERK_SQLHTTP | 非推奨 |
MEMORYCLERK_SQLLOGPOOL | このメモリ クラークは、SQL Server ログ プールによって使用されます。 ログ プールは、トランザクション ログを読み取るときにパフォーマンスを向上させるために使用されるキャッシュです。 具体的には、複数のログ読み取りの間のログ キャッシュの使用率が向上し、ディスク I/O ログの読み取りが減り、ログ スキャンの共有が可能になります。 ログ プールのプライマリ コンシューマーは、Always On (変更キャプチャと送信)、Redo Manager、データベース復旧 - 分析/やり直し/元に戻す、トランザクション ランタイムロールバック、レプリケーション/CDC、バックアップ/復元です。 |
MEMORYCLERK_SQLOPTIMIZER | このメモリ クラークは、クエリのコンパイルのさまざまなフェーズでメモリ割り当てに使用されます。 一部の用途には、クエリの最適化、インデックス統計マネージャー、ビュー定義のコンパイル、ヒストグラムの生成などがあります。 |
MEMORYCLERK_SQLQERESERVATIONS | このメモリ クラークは、メモリ許可の割り当て (クエリの実行中に並べ替え操作とハッシュ操作を実行するためにクエリに割り当てられたメモリ) に使用されます。 クエリ実行予約 (メモリ許可) の詳細については、このブログ 参照してください。 |
MEMORYCLERK_SQLQUERYCOMPILE | このメモリ クラークは、クエリ のコンパイル中にメモリを割り当てる際にクエリ オプティマイザーによって使用されます。 |
MEMORYCLERK_SQLQUERYEXEC | このメモリ クラークは、 バッチ モード処理、 Parallel クエリ 実行、クエリ実行コンテキスト、 空間インデックステセレーション、並べ替え操作とハッシュ操作 (並べ替えテーブル、ハッシュ テーブル)、一部の DVM 処理、 update 統計 実行の領域で割り当てに使用されます。 |
MEMORYCLERK_SQLQUERYPLAN | このメモリ クラークは、 Heap ページ管理、 DBCC CHECKTABLE、 割り当て、および sp_cursor* ストアド プロシージャ 割り当てによって割り当てに使用されます |
MEMORYCLERK_SQLSERVICEBROKER | このメモリ クラークは、 SQL Server Service Broker メモリ割り当てによって使用されます。 |
MEMORYCLERK_SQLSERVICEBROKERTRANSPORT | このメモリ クラークは、 SQL Server Service Broker トランスポート メモリ割り当てによって使用されます。 |
MEMORYCLERK_SQLSLO_OPERATIONS | このメモリ クラークは、パフォーマンスの統計情報を収集するために使用されます 適用対象: Azure SQL Database |
MEMORYCLERK_SQLSOAP | 非推奨 |
MEMORYCLERK_SQLSOAPSESSIONSTORE | 非推奨 |
MEMORYCLERK_SQLSTORENG | このメモリ クラークは、複数のストレージ エンジン コンポーネントによる割り当てに使用されます。 コンポーネントの例としては、データベース ファイルの構造、データベース スナップショット レプリカ ファイル マネージャー、デッドロック モニター、DBTABLE 構造体、ログ マネージャー構造、tempdb のバージョン管理構造、サーバー起動機能、並列クエリでの子スレッドの実行コンテキストなどがあります。 |
MEMORYCLERK_SQLTRACE | このメモリ クラークは、サーバー側の SQL トレース メモリ割り当てに使用されます。 |
MEMORYCLERK_SQLUTILITIES | このメモリ クラークは、SQL Server 内の複数のアロケーターで使用できます。 たとえば、バックアップと復元、ログ配布、データベース ミラーリング、DBCC コマンド、サーバー側の BCP コード、クエリの並列処理作業、ログ スキャン バッファーなどがあります。 |
MEMORYCLERK_SQLXML | このメモリ クラークは、XML 操作の実行時にメモリ割り当てに使用されます。 |
MEMORYCLERK_SQLXP | このメモリ クラークは、SQL Server Extended ストアド プロシージャを呼び出すときのメモリ割り当てに使用されます。 |
MEMORYCLERK_SVL | このメモリ クラークは、内部 SQL OS 構造体の割り当てに使用されます |
MEMORYCLERK_TEST | 内部でのみ使用されます |
MEMORYCLERK_UNITTEST | 内部でのみ使用されます |
MEMORYCLERK_WRITEPAGERECORDER | このメモリ クラークは、書き込みページ レコーダーによる割り当てに使用されます。 |
MEMORYCLERK_XE | このメモリ クラークは、 Extended Events メモリ割り当てに使用されます |
MEMORYCLERK_XE_BUFFER | このメモリ クラークは、 Extended Events メモリ割り当てに使用されます |
MEMORYCLERK_XLOG_SERVER | このメモリ クラークは、SQL Azure Database のログ ファイル管理に使用される Xlog による割り当てに使用されます 適用対象: Azure SQL Database |
MEMORYCLERK_XTP | このメモリ クラークは、 In-Memory OLTP メモリ割り当てに使用されます。 |
OBJECTSTORE_LBSS | このオブジェクト ストアは、一時的な LOB (変数、パラメーター、および式の中間結果) を割り当てるために使用されます。 このストアを使用する例として、 テーブル値パラメーター (TVP) があります。 この領域の修正プログラムの詳細については、 KB の記事4468102 および KB の記事4051359 を参照してください。 |
OBJECTSTORE_LOCK_MANAGER | このメモリ クラークは、SQL Server の Lock Manager によって行われた割り当てを追跡します。 |
OBJECTSTORE_SECAUDIT_EVENT_BUFFER | このオブジェクト ストアは、 SQL Server Audit メモリ割り当てに使用されます。 |
OBJECTSTORE_SERVICE_BROKER | このオブジェクト ストアは、 Service Broker によって使用されます |
OBJECTSTORE_SNI_PACKET | このオブジェクト ストアは、接続を管理するサーバー ネットワーク インターフェイス (SNI) コンポーネントによって使用されます |
OBJECTSTORE_XACT_CACHE | このオブジェクト ストアは、トランザクション情報をキャッシュするために使用されます |
USERSTORE_DBMETADATA | このオブジェクト ストアは、メタデータ構造に使用されます |
USERSTORE_OBJPERM | このストアは、オブジェクトのセキュリティ/アクセス許可を追跡する構造に使用されます |
USERSTORE_QDSSTMT | このキャッシュ ストアは、クエリ ストア ステートメントをキャッシュするために使用されます |
USERSTORE_SCHEMAMGR | スキーマ マネージャー キャッシュは、データベース オブジェクトに関するさまざまな種類のメタデータ情報をメモリ (テーブルなど) に格納します。 このストアの一般的なユーザーは、テーブル、一時プロシージャ、テーブル変数、テーブル値パラメーター、作業テーブル、ワークファイル、バージョン ストアなどのオブジェクトを含む tempdb データベースです。 |
USERSTORE_SXC | このユーザー ストアは、すべての RPC パラメーターを格納するための割り当てに使用されます。 |
USERSTORE_TOKENPERM | TokenAndPermUserStore は、セキュリティ コンテキスト、ログイン、ユーザー、アクセス許可、監査のセキュリティ エントリを追跡する単一の SOS ユーザー ストアです。 これらのオブジェクトを格納するために、複数のハッシュ テーブルが割り当てられます。 |
Note
ドキュメントでは、一般的にインデックスに関して B ツリーという用語が使用されます。 行ストア インデックスで、データベース エンジンによって B+ ツリーが実装されます。 これは、列ストア インデックスやメモリ最適化テーブルのインデックスには適用されません。 詳細については、「SQL Server と Azure SQL のインデックスのアーキテクチャとデザイン ガイド」を参照してください。
参照
SQL Server オペレーティングシステム関連の動的管理ビュー (Transact-sql)
sys.dm_os_sys_info (Transact-SQL)
sys.dm_exec_query_memory_grants (Transact-SQL)
sys.dm_exec_requests (Transact-SQL)
sys.dm_exec_query_plan (Transact-SQL)
sys.dm_exec_sql_text (Transact-SQL)