Projection이란?
Vertica table은 논리적인 구조로만 존재하고 데이터를 저장하는 것은 Projection이라는 물리적인 구조로 저장된다.
실제 Table Data가 저장되는 Object(물리적 구조)

- Table당 복수개의 Projection 생성 가능
- 전체 컬럼을 가지는 Projection인 super projection은 반드시 한개 존재하며 마지막 super projection은 삭제 불가능
- Table의 칼럼을 일부만 가지는 projection도 생성 가능
Projection특징
- Table의 projection이 많아질수록 DML의 성능 저하 가능성 높음
- 모든 Node Data Update하여 적재 속도 영향, 디스크 공간 비효율적 사용
- PK가 없으면 데이터 Type 작은 순으로 정렬, 분산
- Projection의 성능은 Sort Key, Segmentation Key가 결정
- 한번 설정된 Sort Key 변경불가
- 저장공간 효울성과 쿼리 실행속도에 큰 영향을 가짐 = 쿼리 성능 최적화와 관련

Projection생성시기
- 자동생성
- 테이블 생성 후 처음으로 데이터가 insert 될때
- 명시적 생성
- create문으로 projection 생성
- 테이블 생성할때 projection 속성 함께 지정
Projection Sort
Data의 접근하는 빠른 방법 = Cardinality가 낮은 Column통해 작업
SELECT 이름
FROM 학생
WHERE 성별 ='M'
AND PASS='P'
AND 과목 ='JAVA';

'DataBase > Vertica' 카테고리의 다른 글
| CREATE TABLE&PROJECTION (0) | 2023.11.15 |
|---|---|
| [Vertica]K-safety (0) | 2023.08.24 |
| [Vertica]Projection Segmentation & Replication & Local Join (0) | 2023.08.24 |
| [Vertica]Vertica Architecture&특징 (0) | 2023.08.24 |