Descărcarea datelor și conectivitatea

Automatizarea pipeline-urilor de date în Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Cazul de utilizare al descărcării

Exportul datelor în cloud storage

  • Nu toți partenerii au acces la Snowflake
  • COPY INTO scrie rezultatele direct într-un stagiu
  • Nu este necesar un pipeline de export separat
    COPY INTO @harbr_partner_export/
    daily_summary/
    FROM (SELECT * FROM 
    logistics.shipment_summary
    WHERE export_date = 
    CURRENT_DATE() - 1);
    

 

 

mermaid: descărcarea Snowflake în stocarea partenerului

Automatizarea pipeline-urilor de date în 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;
Automatizarea pipeline-urilor de date în Snowflake

Opțiuni de format pentru fișierele exportate

 

Format Ideal pentru
CSV Universal - aproape orice sistem îl poate citi; ideal pentru exporturi către parteneri
JSON Păstrează structuri imbricate; util pentru consumatori de date semi-structurate
Parquet Seturi mari de date analitice; compresie coloanară = fișiere mai mici, citire mai rapidă

Opțiuni cheie de descărcare

-- 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
Automatizarea pipeline-urilor de date în Snowflake

Peisajul conectivității

Peisajul conectivității - conectori

Automatizarea pipeline-urilor de date în Snowflake

Conectorii Kafka și Spark

Conector Kafka

  • Subiectele sunt transmise direct în tabele Snowflake
  • Fără fișiere, fără stagii — folosește Snowpipe Streaming
  • Latență de ordinul secundelor
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING

Conector Spark

  • Se integrează cu API-ul DataFrame al Spark
  • Joburile Spark citesc și scriu în Snowflake
  • Gestionează sarcini de transformare la scară largă
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
  .options(sfOptions).option("dbtable", 
    "shipments").load()
Automatizarea pipeline-urilor de date în Snowflake

JDBC/ODBC și integrări cu parteneri

Conectivitate universală

Integrare Tip Utilizare în Harbr
JDBC / ODBC Drivere universale Instrumente BI (Tableau, Power BI, Looker) - interogare directă
Python Connector Driver Python nativ Pipelines de date, ETL planificat, fluxuri de știință a datelor
dbt Transformare SQL Rulează modele direct în Snowflake compute
Fivetran / Airbyte Ingestie gestionată Sisteme SaaS sursă → Snowflake, fără cod personalizat
Automatizarea pipeline-urilor de date în Snowflake

Să exersăm!

Automatizarea pipeline-urilor de date în Snowflake

Preparing Video For Download...