डेटा अनलोडिंग और कनेक्टिविटी

Snowflake में डेटा पाइपलाइन ऑटोमेशन

Emily Melhuish

Technical Curriculum Developer, Snowflake

अनलोडिंग उपयोग-प्रकरण

क्लाउड स्टोरेज में डेटा एक्सपोर्ट

  • सभी पार्टनर्स के पास Snowflake एक्सेस नहीं होता
  • COPY INTO सीधे स्टेज पर लिखता है
  • अलग एक्सपोर्ट पाइपलाइन की ज़रूरत नहीं
    COPY INTO @harbr_partner_export/
    daily_summary/
    FROM (SELECT * FROM 
    logistics.shipment_summary
    WHERE export_date = 
    CURRENT_DATE() - 1);
    

 

 

mermaid: पार्टनर स्टोरेज में Snowflake से अनलोडिंग

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;
Snowflake में डेटा पाइपलाइन ऑटोमेशन

एक्सपोर्ट फाइल फ़ॉर्मेट विकल्प

 

फ़ॉर्मेट सर्वोत्तम उपयोग
CSV सर्वव्यापी — लगभग हर सिस्टम पढ़ता है; पार्टनर एक्सपोर्ट्स के लिए आदर्श
JSON नेस्टेड स्ट्रक्चर्स संरक्षित; सेमी-स्ट्रक्चर्ड आउटपुट उपभोक्ताओं हेतु उपयोगी
Parquet बड़े विश्लेषणात्मक डेटासेट; कॉलमनर कंप्रेशन = छोटे फाइल, तेज़ रीड्स

मुख्य अनलोडिंग विकल्प

-- बड़े एक्सपोर्ट्स को कई फाइलों में बाँटें (bytes)
HEADER = TRUE              -- पहली पंक्ति में कॉलम नाम
OVERWRITE = TRUE           -- उस पथ पर मौजूदा फाइलें बदलें
MAX_FILE_SIZE = 104857600  -- प्रति आउटपुट फाइल 100 MB
Snowflake में डेटा पाइपलाइन ऑटोमेशन

कनेक्टिविटी लैंडस्केप

कनेक्टिविटी लैंडस्केप कनेक्टर्स

Snowflake में डेटा पाइपलाइन ऑटोमेशन

Kafka और Spark कनेक्टर्स

Kafka कनेक्टर

  • टॉपिक्स सीधे Snowflake टेबल्स में स्ट्रीम होते हैं
  • कोई फाइल/स्टेज नहीं — Snowpipe Streaming उपयोग करता है
  • लेटेंसी सेकंड्स में
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING

Spark कनेक्टर

  • Spark के DataFrame API से इंटीग्रेट होता है
  • Spark जॉब्स Snowflake से पढ़ते/लिखते हैं
  • बड़े-स्तर के ट्रांसफॉर्मेशन वर्कलोड संभालता है
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
  .options(sfOptions).option("dbtable", 
    "shipments").load()
Snowflake में डेटा पाइपलाइन ऑटोमेशन

JDBC/ODBC और पार्टनर इंटीग्रेशन

यूनिवर्सल कनेक्टिविटी

इंटीग्रेशन प्रकार Harbr में उपयोग
JDBC / ODBC यूनिवर्सल ड्राइवर्स BI टूल्स (Tableau, Power BI, Looker) — डायरेक्ट क्वेरी
Python Connector नेटिव Python ड्राइवर डेटा पाइपलाइंस, शेड्यूल्ड ETL, डेटा साइंस वर्कफ़्लोज़
dbt SQL ट्रांसफॉर्मेशन मॉडल सीधे Snowflake compute पर चलते हैं
Fivetran / Airbyte मैनेज्ड इनजेशन SaaS सोर्स सिस्टम → Snowflake, बिना कस्टम कोड
Snowflake में डेटा पाइपलाइन ऑटोमेशन

Ayo berlatih!

Snowflake में डेटा पाइपलाइन ऑटोमेशन

Preparing Video For Download...