Skip to main content

3. 스토리지 최적화

3.1 Liquid Clustering으로 스캔량 감소

Liquid Clustering은 테이블 데이터를 쿼리 패턴에 맞게 자동으로 재배치하여, 불필요한 데이터 스캔을 대폭 줄입니다.

3.2 VACUUM / OPTIMIZE 주기 최적화

3.3 Predictive Optimization 활용

Predictive Optimization은 Unity Catalog 관리형 테이블에 대해 OPTIMIZE, VACUUM, ANALYZE를 자동으로 실행 합니다.
💡 비용 효과: Predictive Optimization을 활성화하면 수동 OPTIMIZE/VACUUM 작업을 관리할 필요가 없어지고, 서버리스 Jobs SKU로 과금되어 효율적입니다. 2024년 11월 이후 생성된 계정에는 기본 활성화되어 있습니다.

4. SQL Warehouse 최적화

4.1 Warehouse 사이징 가이드

💡 Serverless 전략: Serverless SQL Warehouse를 사용한다면 큰 단일 Warehouse에서 시작 하는 것이 권장됩니다. Serverless의 Intelligent Workload Management가 자동으로 동시성을 관리합니다.

4.2 Auto Stop vs Always On 비용 비교

4.3 Result Cache와 Materialized View 활용


5. SQL Warehouse T-shirt 사이즈별 상세 가이드

5.1 사이즈별 스펙과 용도

참고 사이즈 선택 팁: Small에서 시작하여 Query History의 대기 시간(queued time)을 모니터링하세요. 대기 시간이 빈번하게 발생하면 사이즈를 올리거나 클러스터 수를 늘리세요.

5.2 사이즈 결정 의사결정 트리


6. 오토스케일링 전략

6.1 Classic SQL Warehouse 오토스케일링

6.2 Serverless SQL Warehouse IWM (Intelligent Workload Management)

Serverless SQL Warehouse는 IWM 이 자동으로 워크로드를 관리합니다.
참고 Serverless 권장 전략: Serverless SQL Warehouse에서는 여러 작은 Warehouse로 분리하지 말고, 하나의 큰 Warehouse 를 사용하세요. IWM이 자동으로 워크로드를 분배하므로, 분리하면 오히려 리소스 활용률이 낮아집니다.

7. Query Caching 최적화

7.1 Result Cache 히트율 극대화

7.2 Disk Cache 활용


8. 멀티 Warehouse 설계 패턴

8.1 용도별 분리

주의 Serverless에서는 멀티 Warehouse 불필요: Serverless SQL Warehouse의 IWM이 자동으로 워크로드를 격리하므로, 용도별 분리가 불필요합니다. Classic SQL Warehouse에서만 멀티 Warehouse 전략이 효과적입니다.

8.2 비용 최적화를 위한 Warehouse 통합


9. Serverless SQL Warehouse 비용 절감 팁


참고 링크