बैच प्रोसेसिंग को स्केल करना
स्ट्रीमिंग कॉन्सेप्ट्स
Mike Metzger
Data Engineer
स्केलिंग क्या है?
परफॉर्मेंस
बेहतर करना
तेज़ी से
प्रोसेस करना
उतना ही डेटा कम समय में प्रोसेस
ज़्यादा डेटा
प्रोसेस करना
उतने ही समय में ज़्यादा डेटा प्रोसेस
वर्टिकल स्केलिंग
बेहतर कंप्यूटिंग
तेज़ CPU
तेज़ IO
अधिक मेमोरी
आमतौर पर स्केलिंग का
सबसे आसान
तरीका
सबसे कम जटिलता
शायद ही कभी अंडरलाईंग प्रोग्राम/एल्गोरिदम बदलने पड़ते हैं
1
Images courtesy https://unsplash.com/@jeremy0
वर्टिकल स्केलिंग: कमियाँ
स्वभाव से
सीमित
महँगा
हो सकता है / ROI कम
इंडस्ट्री में सुधार
सुनिश्चित नहीं
हॉरिज़ॉन्टल स्केलिंग
एक टास्क को कई हिस्सों में
विभाजित
करना
ज़्यादा कंप्यूटर
या ज़्यादा CPU भी हो सकते हैं
"Embarrassingly parallel"
टास्क पर सबसे अच्छा
जिन्हें वर्करों में आसानी से बाँटा जा सके
बहुत
किफायती
हो सकता है
कुछ प्रक्रियाओं में
लगभग-लिनीयर परफॉर्मेंस सुधार
मिल सकता है
हॉरिज़ॉन्टल स्केलिंग: कमियाँ
जटिलता
प्रोसेसिंग फ्रेमवर्क चाहिए (जैसे Apache Spark या Dask)
अधिक विस्तृत नेटवर्किंग चाहिए
लगातार प्रबंधन
आवश्यकताओं पर निर्भर कर
महँगा
हो सकता है
"Non-parallel"
टास्क
अभ्यास करते हैं!
स्ट्रीमिंग कॉन्सेप्ट्स
Preparing Video For Download...