Otomatisasi Data Pipeline di Snowflake
Emily Melhuish
Technical Curriculum Developer, Snowflake
Mengekspor data ke penyimpanan cloud
COPY INTO menulis hasil langsung ke stageCOPY 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;
| Format | Terbaik untuk |
|---|---|
| CSV | Universal — hampir semua sistem bisa membacanya; ideal untuk ekspor ke partner |
| JSON | Melestarikan struktur bertingkat; berguna untuk konsumen output semi-terstruktur |
| Parquet | Dataset analitik besar; kompresi kolumnar = file lebih kecil, baca lebih cepat |
Opsi utama unloading
-- Bagi ekspor besar ke beberapa file (bytes)
HEADER = TRUE -- sertakan nama kolom di baris pertama
OVERWRITE = TRUE -- ganti file yang sudah ada di path tersebut
MAX_FILE_SIZE = 104857600 -- 100 MB per file output

Konektor Kafka
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING
Konektor Spark
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
.options(sfOptions).option("dbtable",
"shipments").load()
Konektivitas universal
| Integrasi | Tipe | Penggunaan di Harbr |
|---|---|---|
| JDBC / ODBC | Driver universal | Alat BI (Tableau, Power BI, Looker) - kueri langsung |
| Python Connector | Driver Python native | Pipeline data, ETL terjadwal, alur kerja data science |
| dbt | Transformasi SQL | Menjalankan model langsung di komputasi Snowflake |
| Fivetran / Airbyte | Ingesti terkelola | Sumber SaaS → Snowflake, tanpa kode kustom |
Otomatisasi Data Pipeline di Snowflake