適用対象: SQL Server 2016 (13.x) 以降
Azure SQL Database
Azure SQL Managed Instance
ディスク ベーステーブルの列ストア インデックスの内部データを追跡する行セットごとに 1 行を返します。 これらの行セットは列ストア インデックスの内部であり、削除された行、行グループ マッピング、デルタ ストアの行グループを追跡します。 各テーブル パーティションのデータを追跡します。 すべてのテーブルに少なくとも 1 つのパーティションがあります。 データベース エンジンは、列ストア インデックスを再構築するたびに行セットを再作成します。
列名 | データ型 | 説明 |
---|---|---|
partition_id |
ビギント | このパーティションのパーティション ID。 データベース内で一意です。 |
object_id |
int | パーティションを含むテーブルのオブジェクト ID。 |
index_id |
int | テーブルで定義されている列ストア インデックスのインデックス ID。 1 = クラスター化列ストア インデックス 2 = 非クラスター化列ストア インデックス |
partition_number |
int | パーティション番号。 1 = パーティションテーブルの最初のパーティション、またはパーティション分割されていないテーブルの単一パーティション。 2 = 2 番目のパーティションなど。 |
internal_object_type |
tinyint | 列ストア インデックスの内部データを追跡する行セット オブジェクト。 2 = COLUMN_STORE_DELETE_BITMAP 3 = COLUMN_STORE_DELTA_STORE 4 = COLUMN_STORE_DELETE_BUFFER 5 = COLUMN_STORE_MAPPING_INDEX |
internal_object_type_desc |
nvarchar(60) |
COLUMN_STORE_DELETE_BITMAP - このビットマップ インデックスは、列ストアから削除済みとしてマークされた行を追跡します。 パーティションには複数の行グループに行を含めることができるため、ビットマップはすべての行グループに対するものです。 これらの行はまだ物理的に存在し、列ストアの領域を占有します。COLUMN_STORE_DELTA_STORE - 列ストレージに圧縮されていない行グループ (行グループと呼ばれます) を格納します。 各テーブル パーティションには、0 個以上のデルタストア行グループを含めることができます。COLUMN_STORE_DELETE_BUFFER - 更新可能な非クラスター化列ストア インデックスへの削除を維持する場合。 クエリが基になる行ストア テーブルから行を削除すると、削除バッファーは列ストアからの削除を追跡します。 削除された行の数が 1,048,576 を超えると、タプル ムーバーのバックグラウンド スレッドまたは ALTER INDEX ... REORGANIZE 操作によって削除ビットマップにマージされます。 特定の時点で、削除ビットマップと削除バッファーの和集合は、削除されたすべての行を表します。COLUMN_STORE_MAPPING_INDEX - クラスター化列ストア インデックスにセカンダリ非クラスター化インデックスがある場合にのみ使用されます。 これにより、非クラスター化インデックス キーが列ストアの行グループと行 ID にマップされます。 別の行グループに移動する行のキーのみが格納されます。 これは、デルタ行グループが列ストアに圧縮され、マージ操作によって 2 つの異なる行グループの行がマージされるときに発生します。 |
row_group_id |
int | デルタストア行グループの ID。 各テーブル パーティションには、0 個以上のデルタストア行グループを含めることができます。 |
hobt_id |
ビギント | 内部行セット オブジェクト (HoBT) の ID。 sys.dm_db_index_physical_stats() などの他のシステム ビューや関数との結合で、内部行セットの物理的特性に関する詳細情報を取得できます。 |
rows |
ビギント | このパーティション内の行の概数です。 |
data_compression |
tinyint | 各パーティションの圧縮の種類: 0 = NONE 1 = ROW 2 = PAGE |
data_compression_desc |
nvarchar(60) | 各パーティションの圧縮の種類。 行ストア テーブルに使用できる値は、 NONE 、 ROW 、および PAGE です。 列ストア テーブルに使用できる値は、 COLUMNSTORE と COLUMNSTORE_ARCHIVE です。 |
アクセス許可
public
ロールのメンバーシップが必要です。 詳細については、「 Metadata Visibility Configuration」を参照してください。
注釈
データベース エンジンは、列ストア インデックスを作成または再構築するたびに、新しい列ストア内部インデックスを再作成します。
例
A。 テーブルのすべての内部行セットを表示する
次の使用例は、テーブルのすべての内部列ストア行セットを返します。
hobt_id
列を使用して、他のシステム ビューや関数と結合し、特定の行セットに関する詳細情報を見つけることもできます。
SELECT i.object_id,
i.index_id,
i.name,
p.hobt_id,
p.internal_object_type_id,
p.internal_object_type_desc
FROM sys.internal_partitions AS p
INNER JOIN sys.indexes AS i
ON i.object_id = p.object_id
WHERE p.object_id = OBJECT_ID('<table name>');