spec-driven-etl-pipeline은(는) 무엇을 하나요?
Claude Code 기술 및 서브 에이전트를 위한 스펙 기반 분석 데이터 파이프라인: AWS 상에서 Snowflake SQL 변환을 Iceberg on Glue Catalog로, Liquibase 스타일의 DDL, 설정 기반 ETL을 제공합니다.
개요
이 스킬은 AWS 클라우드 환경에서 분석 데이터 제품을 구축하는 과정을 자동화하고 표준화합니다. 개발자는 데이터 변환, 스키마 정의, ETL 워크플로우를 설정 파일에 명시적으로 선언하면, Claude Code 에이전트가 이를 실행 가능한 파이프라인으로 변환합니다.
주요 기능
- Snowflake SQL 변환: Snowflake의 SQL 쿼리를 Iceberg on Glue Catalog 포맷으로 변환
- Liquibase 스타일 DDL: 선언적 데이터 정의 언어를 지원하여 데이터베이스 스키마 변경을 체계적으로 관리
- 설정 기반 ETL: YAML/JSON 설정 파일을 통해 ETL 파이프라인 정의 및 실행
- AWS 통합: Glue, S3, Athena, Snowflake 등 주요 AWS 서비스와 긴밀하게 통합
사용 방법
- 설정 파일(
config.yaml또는config.json)에 데이터 제품의 스펙을 정의합니다. - Claude Code에게
@spec-driven-etl-pipeline명령어를 사용하여 파이프라인 생성을 요청합니다. - 에이전트가 자동으로 변환 스크립트, DDL, ETL 작업을 생성합니다.
- 생성된 리소스를 검토하고 배포합니다.
설정 파일 예시
# config.yaml
data_product:
name: customer_analytics
source:
type: snowflake
database: prod_db
schema: public
table: customers
target:
format: iceberg
catalog: glue
location: s3://data-lake/customer_analytics/
transformations:
- name: clean_customers
query: |
SELECT
id,
TRIM(name) AS name,
LOWER(email) AS email,
created_at
FROM source.customers
ddl:
- type: create_table
table: cleaned_customers
columns:
- name: id
type: BIGINT
- name: name
type: STRING
- name: email
type: STRING
- name: created_at
type: TIMESTAMP
아키텍처
[설정 파일] --> [Claude Code 에이전트] --> [변환 스크립트] --> [AWS Glue Job]
--> [DDL 스크립트] --> [Glue Catalog]
--> [ETL 파이프라인] --> [S3 + Athena]
지원 플랫폼
- Claude Code
- Cursor
- Codex
- GitHub Copilot
의존성
- AWS CLI (최신 버전)
- Snowflake 계정 및 접근 권한
- AWS Glue 및 S3 접근 권한
- Python 3.8+
라이선스
이 프로젝트는 MIT 라이선스에 따라 배포됩니다.
기여하기
버그 리포트, 기능 제안, 풀 리퀘스트는 GitHub 저장소를 통해 환영합니다.