การยกเลิกโหลดข้อมูลและการเชื่อมต่อ

การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

กรณีการใช้งานการยกเลิกโหลดข้อมูล

การส่งออกข้อมูลไปยัง Cloud Storage

  • พาร์ทเนอร์บางรายไม่มีสิทธิ์เข้าถึง Snowflake
  • COPY INTO เขียนผลลัพธ์โดยตรงไปยัง stage
  • ไม่จำเป็นต้องมีไปป์ไลน์ส่งออกแยกต่างหาก
    COPY INTO @harbr_partner_export/
    daily_summary/
    FROM (SELECT * FROM 
    logistics.shipment_summary
    WHERE export_date = 
    CURRENT_DATE() - 1);
    

 

 

แผนภาพ: Snowflake ยกเลิกโหลดข้อมูลไปยัง Partner Storage

การทำให้ Data Pipeline เป็นอัตโนมัติใน 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;
การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

ตัวเลือกรูปแบบไฟล์สำหรับการส่งออก

 

รูปแบบ เหมาะสำหรับ
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
การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

ภาพรวมการเชื่อมต่อ

ภาพรวมการเชื่อมต่อและ Connector ต่าง ๆ

การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

Kafka และ Spark Connector

Kafka Connector

  • หัวข้อสตรีมโดยตรงไปยังตาราง Snowflake
  • ไม่ใช้ไฟล์หรือ stage — ใช้ Snowpipe Streaming
  • ความหน่วงวัดในหน่วยวินาที
# connector.properties (Kafka settings)
snowflake.topic2table.map=events:
delivery_events
snowflake.ingestion.method=
SNOWPIPE_STREAMING

Spark Connector

  • รวมเข้ากับ DataFrame API ของ Spark
  • งาน Spark อ่านและเขียนข้อมูลใน Snowflake
  • รองรับงานการแปลงข้อมูลขนาดใหญ่
// Read from Snowflake into a Spark DataFrame
val df = spark.read.format("snowflake")
  .options(sfOptions).option("dbtable", 
    "shipments").load()
การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

JDBC/ODBC และการรวมระบบกับพาร์ทเนอร์

การเชื่อมต่อแบบสากล

การรวมระบบ ประเภท การใช้งานที่ Harbr
JDBC / ODBC ไดรเวอร์สากล เครื่องมือ BI (Tableau, Power BI, Looker) - สืบค้นโดยตรง
Python Connector ไดรเวอร์ Python ไปป์ไลน์ข้อมูล, ETL ตามกำหนด, งาน Data Science
dbt การแปลง SQL รันโมเดลใน Snowflake compute โดยตรง
Fivetran / Airbyte การนำเข้าข้อมูลแบบจัดการ ระบบต้นทาง SaaS → Snowflake ไม่ต้องเขียนโค้ด
การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

มาฝึกกันเลย!

การทำให้ Data Pipeline เป็นอัตโนมัติใน Snowflake

Preparing Video For Download...