Snowflake 데이터 파이프라인 자동화
Emily Melhuish
Technical Curriculum Developer, Snowflake
클라우드 스토리지로 데이터 내보내기
COPY INTO로 결과를 스테이지에 직접 저장COPY INTO @harbr_partner_export/
daily_summary/
FROM (SELECT * FROM
logistics.shipment_summary
WHERE export_date =
CURRENT_DATE() - 1);

COPY INTO @harbr_partner_export/shipment_summary/
FROM (
SELECT shipment_id,
origin,
destination,
delivery_status,
delivery_time_hours
FROM logistics.shipments
WHERE delivery_date = CURRENT_DATE()
)
FILE_FORMAT = (TYPE = 'CSV' HEADER = TRUE)
OVERWRITE = TRUE;
| 형식 | 최적 용도 |
|---|---|
| CSV | 범용 - 거의 모든 시스템에서 읽기 가능; 파트너 내보내기에 적합 |
| JSON | 중첩 구조 보존; 반정형 출력 소비자에 유용 |
| Parquet | 대규모 분석 데이터셋; 컬럼형 압축으로 파일 크기 감소 및 읽기 속도 향상 |
주요 언로딩 옵션
-- Split large exports across multiple files (bytes)
HEADER = TRUE -- include column names in first row
OVERWRITE = TRUE -- replace any existing files at that path
MAX_FILE_SIZE = 104857600 -- 100 MB per output file

Kafka 커넥터
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING
Spark 커넥터
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
.options(sfOptions).option("dbtable",
"shipments").load()
범용 연결성
| 통합 도구 | 유형 | Harbr 활용 사례 |
|---|---|---|
| JDBC / ODBC | 범용 드라이버 | BI 도구(Tableau, Power BI, Looker) - 직접 쿼리 |
| Python 커넥터 | 네이티브 Python 드라이버 | 데이터 파이프라인, 예약 ETL, 데이터 과학 워크플로 |
| dbt | SQL 변환 | Snowflake 컴퓨팅에서 직접 모델 실행 |
| Fivetran / Airbyte | 관리형 수집 | SaaS 소스 시스템 → Snowflake, 커스텀 코드 불필요 |
Snowflake 데이터 파이프라인 자동화