00 개요
- Vertica에서 테이블 생성 시 SEGMENTED BY랑 PARTITION BY 둘 다 사용하는데, 둘다 데이터를 분산하는 것인데 어떻게 다른 것인지 알아보기 위해 정리
01 Partitioning and Segmentation (파티셔닝과 세그멘테이션)
- Vertica에서 partitioning과 segmentation은 데이터를 현지화 (localize data) 하는 데에 있어서 각각 다른 개념이고 목적이 다르다
1. Segmentation
- Segmentation은 신속한 데이터 삭제 및 쿼리 성능 (data purges and query performance)을 위해 클러스터 노드들 사이에서 데이터를 정리하고 분산하는 것을 의미
- Segmentation은 모든 노드들이 쿼리 실행에 참여할 수 있도록 하기 위해 여러 DB 노드들에 데이터를 평등하게 골고루 (evenly) 나누는 것을 목표로 함
- segmentation 지정하기: CREATE PROJECTION 문의 hash segmentation 절에서 설정 가능
2. Partitioning
- Partitioning은 분산된 컴퓨팅 (distributed computing)을 위해 각 노드 안에서 데이터가 어떻게 정리되어야 하는지 (how to organize data) 지정
- Node partition은 drop하고 싶은 데이터를 쉽게 식별할 수 있게 하고 disk 공간을 확보할 수 있게 함
- partitioning 지정하기: CREATE TABLE문의 PARTITION BY절에서 설정 가능
참조
'DBMS > Vertica' 카테고리의 다른 글
REFRESH (프로젝션 함수) (1) | 2024.07.05 |
---|---|
Projection (프로젝션, 데이터 저장소) (0) | 2024.06.13 |
Encoding/Compression Types (인코딩/압축 종류) (1) | 2024.06.13 |
K-Safety (replica), Data Safety, Node Dependencies란 (0) | 2024.06.12 |
vsql admintools 사용하기 (0) | 2024.05.07 |