エクスポート (0) 印刷
すべて展開
展開 最小化
この記事は翻訳者によって翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

sys.dm_os_memory_clerks (Transact-SQL)

SQL Server のインスタンス内で現在アクティブになっている、すべてのメモリ クラークのセットを返します。 

適用対象: SQL Server (SQL Server 2008 から現在のバージョンまで)

列名

データ型

説明

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 から SQL Server 2008 R2。

pages_kb

bigint

このメモリ クラークに割り当てられたページ メモリの量を KB 単位で指定します。 NULL 値は許可されません。

適用対象: SQL Server 2012 から SQL Server 2014。

multi_pages_kb

bigint

割り当てられた複数ページ メモリの量 (KB 単位)。 メモリ ノードの複数ページ アロケーターを使用することによって割り当てられるメモリの量です。 このメモリは、バッファー プール外に割り当てられ、メモリ ノードの仮想アロケーターを利用します。 NULL 値は許可されません。

適用対象: SQL Server 2008 から SQL Server 2008 R2。

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 値は許可されません。

サーバーに対する VIEW SERVER STATE 権限が必要です。

SQL Server のメモリ マネージャーは 3 つの階層で構成されています。 一番下の階層は、メモリ ノードです。 中間レベルの階層は、メモリ クラーク、メモリ キャッシュ、およびメモリ プールから成ります。 最上位の階層はメモリ オブジェクトから成ります。 これらのオブジェクトは、一般的に、SQL Server インスタンスでメモリを割り当てる場合に使用されます。

メモリ ノードでは、低レベルのアロケーター用インターフェイスおよび実装が用意されています。 SQL Server 内部では、メモリ クラークのみがメモリ ノードにアクセスできます。 メモリ クラークは、メモリ ノードのインターフェイスにアクセスしてメモリを割り当てます。 また、メモリ ノードは、診断用のクラークを使用して、割り当てられたメモリを追跡します。 メモリを大量に割り当てるコンポーネントはすべて、独自のメモリ クラークを作成し、クラークのインターフェイスを使用してすべてのメモリを割り当てる必要があります。 通常、コンポーネントは、SQL Server の起動時に、それぞれに対応したクラークを作成します。

コミュニティの追加

追加
表示:
© 2015 Microsoft