Skalakan pemrosesan batch

Konsep Streaming

Mike Metzger

Data Engineer

Apa itu penskalaan?

  • Meningkatkan kinerja
    • Memproses lebih cepat
      • Waktu lebih singkat untuk memproses jumlah data yang sama
    • Memproses lebih banyak data
      • Lebih banyak data diproses dalam waktu yang sama
Konsep Streaming

Skala vertikal

  • Komputasi lebih baik
    • CPU lebih cepat
    • IO lebih cepat
    • Memori lebih besar
  • Biasanya jenis penskalaan yang termudah
    • Paling sedikit kompleksitas
    • Jarang perlu mengubah program/algoritme dasar

CPU

Memori

1 Images courtesy https://unsplash.com/@jeremy0
Konsep Streaming

Kekurangan skala vertikal

  • Secara bawaan terbatas
  • Bisa mahal / ROI rendah
  • Peningkatan industri tidak terjamin
Konsep Streaming

Skala horizontal

  • Membagi tugas menjadi beberapa bagian
    • Lebih banyak komputer
    • Bisa juga lebih banyak CPU
  • Paling cocok untuk tugas yang "sangat paralel"
    • Tugas yang mudah dibagi ke beberapa pekerja
  • Bisa sangat hemat biaya
  • Dapat memberi peningkatan kinerja hampir linear untuk jenis proses tertentu

CPU1

CPU2

CPU3

CPU4

Konsep Streaming

Kekurangan skala horizontal

  • Kompleksitas
    • Perlu kerangka pemrosesan (seperti Apache Spark atau Dask)
    • Perlu jaringan yang lebih ekstensif
  • Pengelolaan berkelanjutan
  • Bisa mahal tergantung kebutuhan
  • Tugas "non-paralel"
Konsep Streaming

Ayo berlatih!

Konsep Streaming

Preparing Video For Download...