일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 취준
- 기술면접
- 파이썬
- Service
- 데이터웨어하우스
- 웹크롤링
- CS
- 알고리즘
- 웹스크래핑
- 운영체제
- Amazon
- Django
- AWS
- DataWarehouse
- 프로그래머스
- 부트캠프
- 데브코스
- WEB
- airflow
- 클라우드
- 데이터엔지니어링
- 자료구조
- 에어플로우
- 관계형데이터베이스
- 데이터엔지니어
- SQL
- 개념정리
- 개발
- 웹자동화
- 데이터베이스
- Today
- Total
사진과 음악을 좋아하는 개발자 지망생의 블로그
[데이터 웨어하우스 - 중급] 2. Redshift - ⑧ Redshift 중지/제거하기 본문
[데이터 웨어하우스 - 중급] 2. Redshift - ⑧ Redshift 중지/제거하기
devculture309 2023. 5. 25. 13:061. Redshift 관련 유지보수
Amazon Redshift 서비스는 주기적으로 버전 업그레이드를 위해 중단되는 유지보수 창을 가지고 있습니다. 이를 Maintenance window라고도 합니다. Maintenance window 동안에는 일시적으로 Redshift 클러스터의 가용성이 영향을 받을 수 있습니다. 이 유지보수 작업은 Redshift 클러스터의 성능 향상, 보안 패치 및 기능 개선을 위해 필요한 작업입니다.
반면에 Amazon Redshift Serverless는 자동으로 관리되는 서비스이므로 개별적인 유지보수 창이 존재하지 않습니다. 서버리스 모드에서는 AWS가 Redshift 클러스터의 유지보수 및 업그레이드를 자동으로 처리하므로 사용자는 이러한 작업을 직접 관리할 필요가 없습니다. 이를 통해 사용자는 Redshift 데이터 웨어하우스를 더욱 쉽고 편리하게 사용할 수 있습니다.
2. 테이블 청소와 최적화 - VACUUM 명령
VACUUM 명령은 Redshift에서 테이블 청소와 최적화를 위해 사용되는 중요한 명령입니다. VACUUM 명령은 다음과 같은 작업을 수행합니다.
- 테이블 데이터 정렬: Redshift 테이블에 데이터가 삽입, 업데이트 또는 삭제될 때 데이터는 불규칙하게 분산되어 저장될 수 있습니다. VACUUM 명령은 데이터를 정렬하여 남아 있는 행을 모아 쿼리 실행 시 검색해야 할 블록 수를 줄이는 작업을 수행합니다.
- 디스크 공간 해제: 테이블에서 행이 삭제되면 디스크 공간이 즉시 해제되지 않습니다. VACUUM 명령은 더 이상 필요하지 않은 행을 제거하고 사용한 디스크 공간을 해제합니다.
- 삭제된 행에서 공간 회수: 테이블에서 행이 삭제되면 VACUUM 명령 실행 전까지 이 공간은 회수되지 않습니다. VACUUM 명령은 삭제된 행에서 공간을 회수합니다.
- 테이블 통계 업데이트: VACUUM은 테이블 통계를 업데이트하여 Query Planner가 쿼리 최적화를 지원할 수 있도록 합니다.
VACUUM 명령은 큰 테이블에 대해서는 리소스를 많이 소비할 수 있습니다. 따라서 바쁘지 않은 시간에 실행하는 것이 좋습니다. 주기적으로 VACUUM 명령을 실행하여 테이블의 성능과 공간 사용을 최적화하는 것이 권장됩니다.
3. (고정 비용) Redshift 클러스터 중지/재실행
맞습니다. Redshift 클러스터를 중지하고 재실행하는 것은 고정 비용을 절약하기 위한 방법 중 하나입니다.
Redshift 클러스터를 당분간 사용하지 않을 때는 다음과 같이 중지할 수 있습니다.
- AWS Management Console에서 Redshift 콘솔로 이동합니다.
- 중지하려는 Redshift 클러스터를 선택합니다.
- 상단 메뉴에서 "Actions"를 선택하고 "Stop"을 클릭합니다.
클러스터를 중지하면 클러스터의 스토리지 비용만 부담하게 됩니다. 중지된 상태에서는 SQL 실행 등의 작업은 불가능합니다.
Redshift 클러스터를 다시 사용해야 할 때는 다음과 같이 클러스터를 재실행할 수 있습니다.
- AWS Management Console에서 Redshift 콘솔로 이동합니다.
- 중지된 상태의 Redshift 클러스터를 선택합니다.
- 상단 메뉴에서 "Actions"를 선택하고 "Resume"을 클릭합니다.
클러스터를 재실행하면 이전에 사용했던 상태로 복원되며, 다시 SQL 실행 등의 작업을 수행할 수 있습니다.
4. (고정 비용) Redshift 클러스터 삭제
Redshift 클러스터를 영구적으로 삭제하려면 다음 단계를 수행할 수 있습니다.
- AWS Management Console에서 Redshift 콘솔로 이동합니다.
- 삭제할 Redshift 클러스터를 선택합니다.
- 상단 메뉴에서 "Actions"를 선택하고 "Delete"를 클릭합니다.
클러스터를 삭제하기 전에 데이터베이스 내용을 백업하고 싶은 경우, 삭제할 클러스터를 선택한 후 "Delete"를 클릭하기 전에 "Create final snapshot" 옵션을 선택하여 S3에 백업을 생성할 수 있습니다. 이렇게 생성된 S3 백업으로 나중에 새로운 Redshift 클러스터를 론치할 수 있습니다.
Redshift 클러스터를 삭제하면 모든 관련 데이터와 구성이 완전히 삭제되므로, 삭제 전에 반드시 백업을 만들어야 합니다. 삭제 후에는 복구할 수 없으므로 신중히 결정해야합니다.
5. (가변 비용) Redshift Serverless 삭제
Redshift Serverless 클러스터를 삭제하기 전에 다음 단계를 따라야 합니다.
- 모든 Workgroup 삭제: AWS Management Console에서 Redshift 콘솔로 이동한 후, Serverless 클러스터에 연결된 모든 Workgroup을 삭제해야 합니다. Workgroup을 삭제하려면 해당 Workgroup을 선택하고 "Actions" 메뉴에서 "Delete"를 선택하면 됩니다.
- 모든 Namespace 삭제: Serverless 클러스터에서 사용된 모든 Namespace을 삭제해야 합니다. Namespace은 클러스터에 연결된 데이터베이스를 그룹화하는 데 사용됩니다. Redshift 콘솔에서 해당 클러스터를 선택하고 "Actions" 메뉴에서 "Manage namespaces"를 선택하여 모든 Namespace을 삭제할 수 있습니다.
위의 단계를 따르면 Redshift Serverless 클러스터의 관련 리소스를 삭제할 수 있습니다. 이렇게 클러스터를 삭제하면 해당 클러스터와 관련된 모든 데이터와 구성이 완전히 삭제되므로, 신중히 결정해야합니다.
'개발 > 데이터 웨어하우스 - 중급' 카테고리의 다른 글
[데이터 웨어하우스 - 중급] 3. Snowflake - ② Snowflake 사용자 권한 설정 (0) | 2023.05.25 |
---|---|
[데이터 웨어하우스 - 중급] 3. Snowflake - ① Snowflake 특징 소개, 무료 시험판 실행, 실습을 위한 초기 환경 설정 (0) | 2023.05.25 |
[데이터 웨어하우스 - 중급] 2. Redshift - ⑦ Redshift ML 사용하기 (0) | 2023.05.25 |
[데이터 웨어하우스 - 중급] 2. Redshift - ⑥ Redshift Spectrum으로 S3 외부 테이블 조작해보기 (0) | 2023.05.25 |
[데이터 웨어하우스 - 중급] 2. Redshift - ⑤ Redshift 관련 기타 서비스 (0) | 2023.05.25 |