다음을 통해 공유


sys.internal_partitions(Transact-SQL)

적용 대상:SQL Server 2016(13.x) 이상 Azure SQL 데이터베이스Azure SQL Managed Instance

디스크 기반 테이블의 columnstore 인덱스에 대한 내부 데이터를 추적하는 각 행 집합에 대해 하나의 행을 반환합니다. 이러한 행 집합은 columnstore 인덱스 내부이며 삭제된 행, 행 그룹 매핑 및 델타 저장소 행 그룹을 추적합니다. 각 테이블 파티션에 대한 데이터를 추적합니다. 모든 테이블에는 하나 이상의 파티션이 있습니다. 데이터베이스 엔진은 columnstore 인덱스를 다시 작성할 때마다 행 집합을 다시 만듭니다.

열 이름 데이터 형식 설명
partition_id bigint 이 파티션의 파티션 ID입니다. 데이터베이스 내에서 고유합니다.
object_id int 파티션을 포함하는 테이블의 개체 ID입니다.
index_id int 테이블에 정의된 columnstore 인덱스 인덱스 ID입니다.

1 = 클러스터형 columnstore 인덱스
2 = 비클러스터형 columnstore 인덱스
partition_number int 파티션 번호입니다.

1 = 분할된 테이블의 첫 번째 파티션 또는 분할되지 않은 테이블의 단일 파티션입니다.

2 = 두 번째 파티션 등
internal_object_type tinyint columnstore 인덱스 내부 데이터를 추적하는 행 집합 개체입니다.

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 - 이 비트맵 인덱스는 columnstore에서 삭제된 것으로 표시된 행을 추적합니다. 비트맵은 파티션에 여러 행 그룹에 행이 있을 수 있으므로 모든 행 그룹에 대한 것입니다. 이러한 행은 여전히 물리적으로 존재하며 columnstore에서 공간을 차지합니다.

COLUMN_STORE_DELTA_STORE - 열 형식 스토리지로 압축되지 않은 행 그룹(행 그룹)을 저장합니다. 각 테이블 파티션에는 0개 이상의 deltastore 행 그룹이 있을 수 있습니다.

COLUMN_STORE_DELETE_BUFFER - 업데이트할 수 있는 비클러스터형 columnstore 인덱스에 대한 삭제를 유지 관리합니다. 쿼리가 기본 rowstore 테이블에서 행을 삭제하면 삭제 버퍼는 columnstore에서 삭제를 추적합니다. 삭제된 행 수가 1,048,576을 초과하면 튜플 Mover 백그라운드 스레드 또는 작업에 의해 삭제 비트맵으로 ALTER INDEX ... REORGANIZE 다시 병합됩니다. 지정된 시점에서 삭제 비트맵과 삭제 버퍼의 합합은 삭제된 모든 행을 나타냅니다.

COLUMN_STORE_MAPPING_INDEX - 클러스터형 columnstore 인덱스가 보조 비클러스터형 인덱스가 있는 경우에만 사용됩니다. 이렇게 하면 비클러스터형 인덱스 키가 columnstore의 행 그룹 및 행 ID에 매핑됩니다. 다른 행 그룹으로 이동하는 행의 키만 저장합니다. 이는 델타 행 그룹이 columnstore로 압축되고 병합 작업이 서로 다른 두 행 그룹의 행을 병합할 때 발생합니다.
row_group_id int deltastore 행 그룹의 ID입니다. 각 테이블 파티션에는 0개 이상의 deltastore 행 그룹이 있을 수 있습니다.
hobt_id bigint HoBT(내부 행 집합 개체)의 ID입니다. 내부 행 집합의 물리적 특성에 대한 자세한 정보를 얻기 위해 sys.dm_db_index_physical_stats() 와 같은 다른 시스템 뷰 및 함수와 조인에 사용할 수 있습니다.
rows bigint 이 파티션의 대략적인 행 수입니다.
data_compression tinyint 각 파티션에 대한 압축 유형:

0 = NONE
1 = ROW
2 = PAGE
data_compression_desc nvarchar(60) 각 파티션에 대한 압축 형식입니다. rowstore 테이블에 사용할 수 있는 값은 NONE, ROWPAGE. columnstore 테이블에 사용할 수 있는 값은 다음과 같습니다 COLUMNSTORECOLUMNSTORE_ARCHIVE.

사용 권한

public 역할의 멤버 자격이 필요합니다. 자세한 내용은 Metadata Visibility Configuration을 참조하세요.

비고

데이터베이스 엔진은 columnstore 인덱스를 만들거나 다시 작성할 때마다 새 columnstore 내부 인덱스를 다시 만듭니다.

예제

A. 테이블에 대한 모든 내부 행 집합 보기

다음은 테이블에 대한 모든 내부 columnstore 행 집합을 반환하는 예제입니다. 열을 사용하여 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>');