Chapter 4. Micro-Partitions
1. 마이크로파티션 요약
- 데이터가 저장되는 물리적 단위
- 컬럼 포맷
- 데이터 자동 압축
- 약 16MB 단위
- 자동 파티션
- 수집 순서에 따라 자동으로 분할
- DDL에 명시적인 파티션 정의 불필요
- 각 마이크로 파티션에 대한 통계를 메타데이터에 저장
- 마이크로 파티션이 생성될 때 자동 저장
- 데이터 조회 성능 향상을 위한 정보
- 테이블 레벨 : row count, table size, table version, file reference 등
- 컬럼 레벨 : min, max, range value / distinct, null count
2. 마이크로파티션과 메타데이터
-
Immutable
- 한번 만들어진 파일은 불변합니다.
- 즉 데이터가 업데이트되더라도 기존 파일을 수정하는 것이 아니라 새로운 파일이 생성됩니다.
- 이와 같은 물리 저장 구조로 MVCC(Multi-Version Concurrency Control) 데이터 읽기 isolation을 지원합니다.

-
Number of Rows
- 하나의 마이크로 파티션에는 여러 데이터 행이 압축되어 저장됩니다.
- 대량의 데이터를 요약, 집계하는 분석 쿼리에서는 이와 같이 여러 행의 데이터가 압축되어 하나의 파일로 저장되면 데이터를 조회할 때 Disk I/O를 줄일 수 있게 됩니다

-
Metadata 자동 생성
- 마이크로 파티션이 생성될 때 자동으로 해당 마이크로 파티션의 통계 정보가 메타데이터로 저장
- 메타데이터는 쿼리 실행 시 Partition Pruning에 사용

3. 파티션 푸르닝(Pruning)
- 데이터를 조회할 때 불필요한 마이크로 파티션을 조회할 대상에서 제거
- 불필요한 파티션 스캔을 피해 Disk I/O를 절감
- 동의어 : 파티션 제거 (Partition elimination), 조각 제거 (Fragment elimination)
