การขยายระบบ streaming ในแนวนอน

แนวคิดด้าน Streaming

Mike Metzger

Data Engineer

ทบทวนการขยายในแนวนอน

  • แทนที่จะขยายในแนวตั้ง ให้ ขยายในแนวนอน
  • โดยทั่วไปคือการเพิ่มขีดความสามารถด้วยการ เพิ่มจำนวน แทนที่จะเพิ่มความเร็วหรือประสิทธิภาพ
  • เหมาะสมที่สุดกับงานแบบ embarrassingly parallel
    • งานที่แบ่งแยกได้ง่าย
    • เช่น การประมวลผลรูปภาพจำนวนมากที่ไม่พึ่งพากัน
แนวคิดด้าน Streaming

การขยายในแนวนอนกับ streaming

  • การประมวลผลข้อมูล streaming มักมี ความล่าช้าน้อยมาก
  • การส่งข้อมูลระหว่าง worker อาจ ซับซ้อน
  • ควรประมวลผล stream ทั้งหมดภายใน pipeline เดียว
  • สเกลด้วยการสร้าง สำเนา ของ pipeline
แนวคิดด้าน Streaming

สำเนา pipeline

  • เมื่อเกิด event ข้อมูลจะ เข้าสู่ pipeline
  • งานทั้งหมดที่เกี่ยวข้อง อยู่ภายใน pipeline จนเสร็จสมบูรณ์
  • ขยายระบบด้วยการ เพิ่ม pipeline
  • ยังสามารถ ขยายในแนวตั้ง ภายใน pipeline ได้
แนวคิดด้าน Streaming

ข้อพิจารณาเพิ่มเติม

  • อาจต้องการ ส่วนประกอบอื่น เพิ่มเติม
  • Load balancer / ตัวกำหนดทิศทาง
    • แบบ Card dealer
    • แบบ node ที่ว่างที่สุด
  • อาจเกิด คอขวด ในที่สุด
    • ประสิทธิภาพการเขียนดิสก์
  • พิจารณา ย่อ pipeline ให้สั้นลง
    • ลดความจำเป็นในการประมวลผลข้อมูล ทันที
แนวคิดด้าน Streaming

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

แนวคิดด้าน Streaming

Preparing Video For Download...