다음을 통해 공유


비클러스터형 columnstore 인덱스 사용

SQL Server 테이블에서 비클러스터형 columnstore 인덱스를 사용하기 위한 주요 작업을 설명합니다.

columnstore 인덱스에 대한 개요는 Columnstore Indexes Described를 참조하십시오.

클러스터형 columnstore 인덱스에 대한 자세한 내용은 Using Clustered Columnstore Indexes을 참조하십시오.

콘텐츠

비클러스터형 Columnstore 인덱스 만들기

비클러스터형 columnstore 인덱스로 데이터를 로드하려면 먼저 데이터를 힙 또는 클러스터형 인덱스로 저장된 기존 rowstore 테이블에 로드한 다음 CREATE COLUMNSTORE INDEX(Transact-SQL) 를 사용하여 columnstore 인덱스 만들기를 사용합니다.

columnstore 인덱스로 데이터

비클러스터형 Columnstore 인덱스의 데이터 변경

테이블에 비클러스터형 columnstore 인덱스를 만든 후에는 해당 테이블에서 데이터를 직접 수정할 수 없습니다. INSERT, UPDATE, DELETE 또는 MERGE를 사용한 쿼리는 실패하며 오류 메시지를 반환합니다. 테이블에서 데이터를 추가하거나 수정하려면 다음 중 하나를 수행합니다.

  • columnstore 인덱스 사용 안 함 그런 다음 테이블에서 데이터를 업데이트할 수 있습니다. columnstore 인덱스를 사용하지 않도록 설정하는 경우 데이터 업데이트를 완료할 때 columnstore 인덱스를 다시 작성할 수 있습니다. 다음은 그 예입니다.

    ALTER INDEX mycolumnstoreindex ON mytable DISABLE;
    -- update mytable --
    ALTER INDEX mycolumnstoreindex on mytable REBUILD
    
  • columnstore 인덱스 삭제, 테이블을 업데이트한 다음 CREATE COLUMNSTORE INDEX를 사용하여 columnstore 인덱스 다시 만듭니다. 예를 들면 다음과 같습니다.

    DROP INDEX mycolumnstoreindex ON mytable
    -- update mytable --
    CREATE NONCLUSTERED COLUMNSTORE INDEX mycolumnstoreindex ON mytable;
    
    
  • columnstore 인덱스가 없는 준비 테이블에 데이터를 로드합니다. 준비 테이블에서 columnstore 인덱스를 작성합니다. 준비 테이블을 주 테이블의 빈 파티션으로 전환합니다.

  • columnstore 인덱스가 있는 테이블에서 빈 준비 테이블로 파티션을 전환합니다. 준비 테이블에 columnstore 인덱스가 있는 경우 columnstore 인덱스를 사용하지 않도록 설정합니다. 업데이트를 수행합니다. columnstore 인덱스를 작성 또는 다시 작성합니다. 준비 테이블을 주 테이블의 파티션(현재 비어 있음)으로 다시 전환합니다.