피드로 돌아가기
Dev.toInfrastructure
원문 읽기
ADF가 BigQuery sink를 지원하지 않는다는 제약을 Storage Transfer Service와 Parquet 포맷으로 해소하여 멀티클라우드 데이터 파이프라인을 구현한 사례
Cross-Cloud Pipeline with ADF & STS: Architecture, Troubleshooting & Costs
AI 요약
Context
Azure PostgreSQL Flexible Server에 저장된 운영 데이터와 GCP BigQuery 기반의 분석 환경이 분리되어 있어 데이터 연동이 필요했다. 양쪽 팀 모두 마이그레이션 의사가 없었으며, 각 클라우드의 네이티브 도구를 최대한 활용해야 했다.
Technical Solution
- Azure Data Factory의 Self-Hosted Integration Runtime으로 VNet 내 PostgreSQL에서 데이터를 추출하여 Blob Storage에 Parquet 파일로 스테이징
- Google Cloud Storage Transfer Service가 Azure SAS token 인증으로 Blob Storage의 파일을 GCS 버킷으로 자동 이동
- BigQuery Jobs API가 GCS의 Parquet 파일을 원시 테이블로 로드
- dbt Cloud가 원시 데이터를 정제 및 변환
- ADF 파이프라인별 Watermark 메커니즘으로 증분 로드 구현
Key Takeaway
멀티클라우드 환경에서는 각 클라우드 서비스의 명시적 제약과 암묵적 가정을 모두 파악해야 하며, 서비스 간 연결부에서 가장 많은 디버깅 시간이 소요된다.
실천 포인트
VNet 보호된 데이터베이스에서 BigQuery로의 ETL이 필요한 환경에서 ADF Self-Hosted IR + Blob Storage + GCS Transfer Service 조합을 사용 시 커스텀 코드 없이 네이티브 관리형 서비스만으로 파이프라인 구축 가능