SQL Table Partitioning

파티션테이블을 제거하는 방법

AWS-in 2015. 10. 13. 15:33

방법.1 클러스터인덱스가 있는 파티션테이블

클러스터인덱스를 다른 파일그룹에 이동하게 모든 데이터가 이동이 된다.

대용량일 경우에는 오래걸리므로 조심스럽게 해야한다.

-- Quick and easy way to unpartition and move it.

CREATE CLUSTERED INDEX [PK_col1]
    ON [dbo].[PartitionTable1]([col1])
    WITH (DROP_EXISTING = ON)
    ON [PRIMARY];
GO

방법.2 넌클러스터 인덱스만 존재하는 파티션테이블일 경우

파티션함수를 모두 Merge하여 한개의 파티션함수만 남긴 후 

파티션 Scheme를 새로운 그룹을 정의 후 파티션함수를 SPLIT 하여 새로 만든 파일그룹에 이동시킨다.

같은 파일그룹에 같은스키마의 더미테이블을 만들어서 파티션 Switch 하면 기존의 파티션테이블에 데이터가 0건이 된다.

이후 테이블을 삭제하고 관련 함수, 파일그룹등을 정리해주면 끝난다.