들어가며: 두 개의 베스트 프랙티스, 하나의 리뷰로
AWS에서 Snowflake를 운영하다 보면 두 가지 베스트 프랙티스를 동시에 따라야 하는 딜레마에 빠집니다. 하나는 AWS Well-Architected Framework의 인프라 관점, 다른 하나는 Snowflake Well-Architected Framework의 데이터 플랫폼 관점이죠. 이 두 리뷰를 따로 수행하면 보안 통제 항목이 Snowflake 설정과 매핑되지 않고, 두 프로세스를 조정하느라 프로덕션 준비 일정이 늘어지며, 감사 증빙을 만들 때도 서로 다른 출처의 자료를 연결해야 하는 어려움이 생깁니다.
이번에 AWS와 Snowflake가 공동으로 발표한 Snowflake and AWS Custom Lens for the AWS Well-Architected Framework는 이 문제를 정면으로 해결합니다. 두 프레임워크의 베스트 프랙티스를 하나의 리뷰 경험으로 통합하고, 실제 프로덕션 환경에서 두 서비스가 어떻게 조합되는지 반영한 통합 권장사항을 제공합니다. 이 글에서는 이 Lens의 7개 Pillar를 실무자 관점에서 분석하고, 실제 리뷰를 시작하는 세 가지 방법을 소개합니다.

Lens의 7개 Pillar 분석: AWS + Snowflake 통합 관점
이 Lens는 AWS Well-Architected Framework의 7개 Pillar(Security, Reliability, Performance Efficiency, Cost Optimization, Operational Excellence, Sustainability)와 Snowflake Well-Architected Framework의 5개 Pillar를 결합합니다. 각 Pillar별로 AWS 측과 Snowflake 측의 가이드를 매핑하고, 통합 권장사항을 제시하는 것이 핵심입니다.
1. Security & Identity: 두 개의 보안 평면을 하나로
보안은 AWS 인프라 측(IAM, KMS, VPC)과 Snowflake 측(Network Policy, RBAC, OAuth)이라는 두 개의 평면으로 나뉩니다. 이 Lens는 각 도메인별로 AWS와 Snowflake의 가이드를 매핑하고 통합 권장사항을 제공합니다.
| 도메인 | AWS 가이드 | Snowflake 가이드 | 통합 권장사항 |
|---|---|---|---|
| 네트워크 보안 | VPC 설계, PrivateLink, Security Group | Network Policy, IP 허용 목록 | VPC와 Snowflake 간 PrivateLink 사용; EC2 Security Group 위에 Snowflake Network Policy를 레이어링하여 심층 방어 |
| 아이덴티티 및 접근 | IAM 역할, 최소 권한, 연합 | DB 역할, 역할 계층, MFA | AWS IAM Identity Center를 통해 Snowflake 인증 연합; IdP 그룹을 Snowflake DB 역할로 매핑 |
| 인증 | IAM 사용자 MFA, IdP 연합 | 서비스 계정 RSA 키, SAML SSO, OAuth | Private Key는 AWS Secrets Manager에 저장, 자동 로테이션; SAML 연합으로 단일 IdP |
| 권한 부여 | 조직 단위 SCP, 위임 역할 경계 | 역할 계층 상속, SECURITYADMIN 분리 | AWS IAM 역할과 Snowflake 기능 역할을 1:1 매핑 (Workload Identity Federation) |
실무 팁: 국내 금융권이나 공공기관에서는 KMS와 Tri-Secret Secure 조합이 특히 중요합니다. Snowflake의 Tri-Secret Secure는 AWS KMS와 Snowflake의 키를 함께 사용하는 이중 암호화 방식으로, 규제 요구사항을 충족하는 데 유용합니다.
2. Data Governance & Compliance: 데이터 보호의 두 레이어
데이터 보호는 AWS 측의 KMS, S3 암호화, 수명 주기 정책과 Snowflake 측의 Dynamic Masking, Row Access Policy, Tri-Secret Secure, 자동 분류가 상호 보완됩니다. 통합 권장사항의 핵심은 단일 적용 지점(Single Enforcement Point) 을 만드는 것입니다.
- 데이터 보호: AWS KMS + Snowflake Tri-Secret Secure로 이중 암호화; Snowflake Masking Policy로 컬럼 수준 보호
- 감사 및 컴플라이언스: Snowflake Audit Log를 S3와 EventBridge를 통해 CloudWatch 또는 OpenSearch Service로 스트리밍하여 통합 컴플라이언스 모니터링 구축
- Row Access Policy: Snowflake에서 한 번 정의하고, AWS 측은 파이프라인 서비스 계정으로만 제한
3. Reliability: 장애 시나리오 대응
재해 복구는 AWS의 Multi-AZ, Cross-Region Replication, Route53 Failover와 Snowflake의 Database Replication, Failover Group, Client Redirect를 결합합니다.
- DR: Snowflake Cross-Region Replication을 보조 AWS 리전에 구성; Snowflake Client Redirect로 자동 장애 조치
- 데이터 내구성: Snowflake Time Travel 보존 기간을 S3 버전 관리 정책과 정렬; Zero-Copy Clone으로 사전 배포 테스트
4. Performance Optimization: 인프라와 쿼리 최적화의 조화
퍼포먼스 최적화는 AWS 인스턴스 선택, 네트워크 처리량과 Snowflake Warehouse 크기 조정, 클러스터링 키, 쿼리 최적화를 함께 고려합니다.
- Compute 크기 조정: 쿼리 프로파일링 기반 Warehouse 크기 조정; 동시성 스케일링을 위해 Multi-Cluster Warehouse 사용
- 데이터 조직화: Snowpipe 수집을 위한 S3 스테이징 파일 크기 최적화; 자주 필터링되는 컬럼에 클러스터링 키 적용 (낮은 카디널리티 → 높은 카디널리티 순서)
주의: Snowflake의 클러스터링 키는 전통적인 DB와 달리 낮은 카디널리티 컬럼을 선행해야 마이크로 파티션 프루닝에 효과적입니다. 이 부분은 실무에서 자주 실수하는 지점이니 꼭 기억하세요.
5. Cost Optimization & FinOps: 두 개의 과금 모델 통합 관리
비용 최적화는 AWS의 소비/예약 모델과 Snowflake의 Credit/Storage 모델을 함께 관리해야 합니다. 통합 대시보드에 AWS Cost Explorer 데이터와 Snowflake Credit 소비를 결합하고, 동일한 Cost Center 라벨로 태깅하는 것이 첫걸음입니다.
- Compute 효율: AWS Savings Plans와 Snowflake Capacity Commitment를 페어링; 개발 Warehouse는 Auto-Suspend 적극 활용
- Storage 효율: Snowflake Time Travel 보존 기간을 개발 1일, 규제 데이터 90일로 정렬하고 S3 Lifecycle 전환과 연계
6. Operational Excellence: 통합 운영 관측성
운영 우수성은 CloudWatch, Systems Manager와 Snowflake Query History, Task Monitoring을 연결하는 것입니다. 통합 권장사항의 핵심은 동일한 Terraform State에서 AWS 인프라와 Snowflake 오브젝트를 함께 관리하는 것입니다.
- 모니터링: Snowflake 메트릭을 S3 통합으로 CloudWatch에 내보내기; 통합 운영 대시보드 구축
- Automation & IaC: Terraform으로 AWS + Snowflake 리소스를 함께 관리; CI/CD 파이프라인으로 DB 마이그레이션 워크플로우 자동화
- Incident Response: Snowflake Resource Monitor 알림 → SNS → Lambda 자동 Remediation 트리거
7. Sustainability: 첫 번째 ISV-AWS Lens의 지속 가능성 Pillar
이 Lens는 ISV와 AWS의 공동 Lens 중 최초로 Sustainability를 1급 Pillar로 포함했습니다. AWS 리전 선택, Warehouse 통합, 쿼리 효율, 데이터 수명 주기 관리가 모두 대상입니다.
- 리전 선택: 지연 시간에 민감하지 않은 워크로드는 재생 에너지 비율이 높은 보조 리전 선호
- Compute 효율: 개발/배치 워크로드는 Auto-Suspend 정책 강제; 간헐적 워크로드는 Serverless 기능 선호
- 쿼리 효율: 클러스터링 키와 Materialized View로 Full Table Scan 최소화

Lens 사용 방법: 세 가지 접근 경로
이 Lens는 세 가지 환경에서 사용할 수 있으며, 각각 팀의 선호도와 워크플로우에 맞게 설계되었습니다.
1. AWS Well-Architected Tool 콘솔
가장 전통적인 방식입니다. Lens JSON 파일을 다운로드하여 AWS WA Tool 콘솔에 업로드하면 7개 Pillar별로 Snowflake 특화 질문이 포함된 구조화된 리뷰를 진행할 수 있습니다. 각 베스트 프랙티스는 High Risk, Medium Risk, No Risk Identified로 평가되며, 개선 계획, 이정표 추적, PDF/JSON 내보내기를 지원합니다.
시작 방법:
- Snowflake AWS Custom Lens JSON 파일 다운로드
- AWS WA Tool 콘솔 → Custom Lens → Create Custom Lens → JSON 업로드
2. Kiro (AI 기반 IDE)
AWS의 AI 기반 IDE인 Kiro에서 대화형 리뷰를 진행할 수 있습니다. 체크박스 기반 질문으로 Red/Yellow/Green 시스템을 통해 위험을 식별하고, Now(12주), Next(3060일), Later(90일+) 세 가지 시간대별 권장사항을 제공합니다.
시작 방법:
- Snowflake WAF Power 다운로드 및 압축 해제
- Kiro에서 폴더 열기 → 채팅에 "Run a Snowflake and AWS WAF review" 입력
3. Snowflake Cortex Code (CLI 및 Snowsight)
Snowflake의 코딩 어시스턴트인 Cortex Code를 통해 리뷰를 실행할 수 있습니다. CLI와 Snowsight 내에서 모두 사용 가능합니다.
CLI 시작:
cortex skill add
cortex
# 채팅 창에: invoke the joint-waf-aws-lens skill
Snowsight 시작:
- Projects > Workspaces → 워크스페이스 열기
- 우측 하단 Cortex Code 아이콘 → + Add context > Upload Skill Folder
- 메시지에:
run the joint-waf skill입력
팁: 국내에서는 AWS WA Tool 콘솔 방식이 가장 널리 쓰이지만, AI 기반 리뷰에 익숙한 팀이라면 Kiro나 Cortex Code가 훨씬 효율적입니다. 특히 Cortex Code는 Snowsight 내에서 바로 실행할 수 있어 Snowflake 사용자에게 진입 장벽이 낮습니다.

결론: 통합 리뷰가 가져올 실무 변화
이 Lens의 진정한 가치는 AWS 인프라 가이드와 Snowflake 베스트 프랙티스를 단순히 나란히 놓는 것이 아니라, 두 레이어가 정렬되어야 하는 지점을 구체적으로 제시한다는 점입니다. 보안, 거버넌스, 비용, 운영, 지속 가능성 등 모든 영역에서 통합 권장사항을 제공함으로써, 별도의 리뷰 프로세스를 조정하느라 낭비되던 시간을 획기적으로 줄일 수 있습니다.
실무 적용을 위한 첫걸음:
- Security와 Reliability Pillar부터 시작하세요. 대부분의 프로덕션 워크로드에서 가장 높은 영향도의 발견 사항이 나옵니다.
- 개선 계획을 팀 내에서 우선순위를 정하고, PDF 또는 JSON으로 내보내어 이해관계자 보고 및 컴플라이언스 증빙에 활용하세요.
- 아직 Snowflake on AWS를 운영 중이 아니라면, 이 Lens를 아키텍처 설계 단계에서 참고하면 사후 수정 비용을 크게 줄일 수 있습니다.
한국 개발 생태계에서의 적용 맥락: 국내 SI/클라우드 환경에서는 AWS와 Snowflake를 별도로 관리하는 경우가 많아, 보안 감사 시 두 시스템의 로그를 수동으로 매칭해야 하는 어려움이 자주 발생합니다. 이 Lens를 도입하면 AWS CloudTrail + Snowflake Access History를 통합 모니터링할 수 있어, 금융감독원이나 개인정보보호위원회의 실태 점검에 효과적으로 대응할 수 있습니다.
이 기술의 한계 또는 주의사항:
- 이 Lens는 AWS WA Tool의 Custom Lens 기능을 사용하므로, AWS Organizations나 여러 계정을 사용하는 환경에서는 각 계정별로 별도 업로드가 필요할 수 있습니다.
- Snowflake 측 기능(Tri-Secret Secure, Cortex Code 등)은 특정 에디션(Enterprise 이상)에서만 사용 가능하므로, 라이선스 확인이 필요합니다.
- AI 기반 리뷰(Kiro, Cortex Code)는 아직 베타 수준의 기능이 포함되어 있어, 프로덕션 감사 증빙으로 사용하기 전에 AWS WA Tool 콘솔 리뷰와 병행하는 것이 안전합니다.
다음 단계 학습 방향:
- AWS Well-Architected Framework 공식 문서
- Snowflake Well-Architected Framework
- Snowflake Tri-Secret Secure 설정 가이드
함께 보면 좋은 글:
- Popover API로 툴팁의 시대를 바꾸다: 라이브러리 의존에서 벗어나는 법
- 슬랙 봇, 이제 코딩 어시스턴트에게 한 번에 만들어 달라고 하세요 (Vercel Slack Agent Skill)
근거자료: AWS Architecture Blog - Introducing the Snowflake and AWS Custom Lens