Data Pipelines บน Kubernetes

Introduction to Kubernetes

Frank Heilmann

Platform Architect and Freelance Instructor

Data Pipelines คืออะไร?

  • ชุดกระบวนการสำหรับเคลื่อนย้าย แปลง หรือวิเคราะห์ข้อมูล
  • ขั้นตอนทั่วไป:
    • ETL: Extract ข้อมูลจากแหล่งต้นทาง จากนั้น Transform ให้อยู่ในรูปแบบที่มีความหมาย แล้วจึง Load ไปยังปลายทาง (เช่น data warehouse)
    • ELT: Extract ข้อมูลจากแหล่งต้นทาง จากนั้น Load ไปยังปลายทาง (เช่น data lake) แล้วจึง Transform ข้อมูลตามต้องการ

Data Pipelines

Introduction to Kubernetes

Data Pipelines บน Kubernetes

  • ขั้นตอนของ data pipeline สอดคล้องกับออบเจกต์ใน Kubernetes:
    • ขั้นตอน Extract, Transform, Load: Pods (Deployment หรือ StatefulSet)
    • ข้อมูลที่ Extract และ Transform แล้ว: Persistent Volumes
  • Kubernetes สามารถ scale out Deployments และ Storage ได้ตามต้องการ ช่วยเพิ่ม throughput

Data Pipelines บน Kubernetes

Introduction to Kubernetes

เครื่องมือโอเพนซอร์สสำหรับ Data Pipelines

  • มีซอฟต์แวร์โอเพนซอร์สหลายตัวที่พร้อมใช้งานบน Kubernetes
  • ตัวอย่าง:
    • Extract: Apache NiFi, Apache Kafka ร่วมกับ Kafka Connect
    • Transform: Apache Spark, Apache Kafka, PostgreSQL
    • Load: Apache Spark, Apache Kafka ร่วมกับ KSQL, PostgreSQL
    • Storage บน PVs: Minio, Ceph
  • รายการนี้ไม่ได้ครอบคลุมทั้งหมด
Introduction to Kubernetes

มาฝึกกันเถอะ!

Introduction to Kubernetes

Preparing Video For Download...