次の方法で共有


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_cursoropensp_cursorfetchsp_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)