Datenentladung und Konnektivität

Automatisierung von Datenpipelines in Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Der Unloading-Use-Case

Daten in Cloud-Speicher exportieren

  • Nicht alle Partner haben Snowflake-Zugriff
  • COPY INTO schreibt Ergebnisse direkt in eine Stage
  • Kein separater Export-Workflow nötig
    COPY INTO @harbr_partner_export/
    daily_summary/
    FROM (SELECT * FROM 
    logistics.shipment_summary
    WHERE export_date = 
    CURRENT_DATE() - 1);
    

 

 

mermaid: Snowflake entlädt in Partner-Speicher

Automatisierung von Datenpipelines in Snowflake

COPY INTO

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;
Automatisierung von Datenpipelines in Snowflake

Export-Dateiformate

 

Format Am besten für
CSV Universell – fast jedes System kann es lesen; ideal für Partner-Exporte
JSON Erhält verschachtelte Strukturen; gut für semi-strukturierte Verbraucher
Parquet Große Analysedaten; spaltenbasiert komprimiert = kleinere Dateien, schnellere Reads

Wichtige Unloading-Optionen

-- Große Exporte auf mehrere Dateien aufteilen (Bytes)
HEADER = TRUE              -- Spaltennamen in erster Zeile
OVERWRITE = TRUE           -- vorhandene Dateien am Pfad ersetzen
MAX_FILE_SIZE = 104857600  -- 100 MB pro Ausgabedatei
Automatisierung von Datenpipelines in Snowflake

Die Konnektivitätslandschaft

Die Konnektivitätslandschaft Connectoren

Automatisierung von Datenpipelines in Snowflake

Kafka- und Spark-Connectoren

Kafka-Connector

  • Topics streamen direkt in Snowflake-Tabellen
  • Keine Dateien, keine Stages — nutzt Snowpipe Streaming
  • Latenz in Sekunden gemessen
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING

Spark-Connector

  • Integriert sich in Sparks DataFrame-API
  • Spark-Jobs lesen aus und schreiben nach Snowflake
  • Eignet sich für große Transformations-Workloads
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
  .options(sfOptions).option("dbtable", 
    "shipments").load()
Automatisierung von Datenpipelines in Snowflake

JDBC/ODBC und Partnerintegrationen

Universelle Konnektivität

Integration Typ Nutzung bei Harbr
JDBC / ODBC Universelle Treiber BI-Tools (Tableau, Power BI, Looker) – direkte Abfragen
Python-Connector Nativer Python-Treiber Datenpipelines, geplante ETL, Data-Science-Workflows
dbt SQL-Transformation Führt Modelle direkt auf Snowflake-Compute aus
Fivetran / Airbyte Verwaltete Ingestion SaaS-Quellen → Snowflake, kein eigener Code
Automatisierung von Datenpipelines in Snowflake

Lass uns üben!

Automatisierung von Datenpipelines in Snowflake

Preparing Video For Download...