4 คะแนน โดย xguru 2024-07-24 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ตัวประสานงานเวิร์กโฟลว์แบบอเนกประสงค์ที่ขยายระบบในแนวนอนได้ พร้อมให้บริการแบบ Workflow-as-a-Service (WAAS) ที่มีการจัดการเต็มรูปแบบ
    • จัดการเวิร์กโฟลว์ขนาดใหญ่ เช่น data pipeline และ pipeline สำหรับการฝึกโมเดลแมชชีนเลิร์นนิง
    • ดูแลตลอดทั้งวงจรชีวิตของเวิร์กโฟลว์ เช่น การ retry, คิวงาน และการกระจายงาน
    • รองรับแพ็กเกจ business logic ได้หลายรูปแบบ (Docker image, notebook, bash script, SQL, Python ฯลฯ)
    • รองรับทั้ง DAG (Directed Acyclic Graph) รวมถึงเวิร์กโฟลว์แบบไม่เป็นวงจรและแบบมีวงจร
    • มีแพตเทิร์นที่นำกลับมาใช้ซ้ำได้หลายแบบ เช่น foreach loop, เวิร์กโฟลว์ย่อย และ conditional branching
    • นิยาม orchestration ที่ยืดหยุ่นและทรงพลังในรูปแบบ JSON
    • รักษาความสอดคล้องของคุณสมบัติสำคัญ (ผู้สร้าง, ข้อมูลเจ้าของ, การตั้งค่าการรัน)
    • สร้างเวอร์ชันใหม่ทุกครั้งที่เวิร์กโฟลว์มีการเปลี่ยนแปลง ติดตามได้ และย้อนกลับได้ง่าย
  • ผู้ใช้หลายพันคนของ Netflix ไม่ว่าจะเป็น data scientist, data engineer, machine learning engineer, software engineer, ผู้สร้างคอนเทนต์ และ business analyst กำลังใช้งานบริการนี้สำหรับ use case ที่หลากหลาย
    • ตัวบริการมีมาแล้วตั้งแต่ 2 ปีก่อน และครั้งนี้ได้เปิดเป็นโอเพนซอร์ส
    • รองรับกรณีใช้งานเวิร์กโฟลว์หลากหลาย เช่น ETL pipeline, ML workflow และ AB test pipeline
    • ด้วยความสามารถในการขยายระบบแนวนอน จึงจัดการได้ทั้งเวิร์กโฟลว์จำนวนมากและงานจำนวนมากภายในแต่ละเวิร์กโฟลว์
  • มีการตั้งเวลารันเวิร์กโฟลว์หลายแสนรายการและงานหลายล้านรายการทุกวัน และยังดำเนินงานภายใต้ SLO ที่เข้มงวดได้แม้ในช่วงที่ทราฟฟิกพุ่งสูง
    • ย้ายเวิร์กโฟลว์เดิมหลายล้านรายการภายใน Netflix มายัง Maestro ได้สำเร็จโดยไม่เกิด downtime
    • จำนวนงานที่รันในช่วง 1 ปีที่ผ่านมาเพิ่มขึ้น 87.5%
    • โดยเฉลี่ยรันงานหลายแสนรายการต่อวัน และในวันที่หนาแน่นจะทำงานเสร็จได้ราว 2 ล้านรายการ

1 ความคิดเห็น

 
xguru 2024-07-24

ดูเหมือนว่า AI จะช่วยสรุปบทเกริ่นนำที่เขียนไว้ตอนเปิดซอร์สครั้งนี้ให้แล้วนะครับ: Maestro: ตัวประสานเวิร์กโฟลว์ของ Netflix

แต่ชื่อ Maestro นี่มีเยอะเกินไปจริง ๆ ฮ่าๆ
Maestro - เคอร์เนลที่เข้ากันได้กับ Linux พัฒนาด้วย Rust
Maestro - เฟรมเวิร์กทดสอบ UI อัตโนมัติสำหรับแอปมือถือ