फैसला इस बात से तय होने दें कि डेटा कितनी जल्दी किसी फैसले को बदलता है। अगर अगली सुबह से पहले कोई भी उस डेटा पर कार्रवाई नहीं करता, तो batch सस्ता है, समझने में आसान है और backfill करना कहीं ज्यादा सरल है। streaming तब चुनें जब latency खुद प्रोडक्ट का हिस्सा हो, जैसे fraud scoring, live inventory या alerting। streaming आपसे exactly once handling, late data, state management और स्थायी on call की कीमत वसूलती है।
इंटरव्यूअर यह क्यों पूछते हैं
इंटरव्यूअर जानना चाहते हैं कि आप आर्किटेक्चर फैशन देखकर चुनते हैं या वजह देखकर, क्योंकि जिस streaming पाइपलाइन की किसी को जरूरत ही नहीं थी वह एक स्थायी ऑपरेशनल टैक्स बन जाती है। वे streaming की ऑपरेशनल कीमत सुनना चाहते हैं (state, watermarks, replay, चलती हुई job पर schema बदलना) और यह बात भी कि पंद्रह मिनट का micro batch तथाकथित real time जरूरतों में से ज्यादातर को पूरा कर देता है।
अपना जवाब कैसे स्ट्रक्चर करें
- बिजनेस को असल में जितनी decision latency चाहिए, उस पर टिकें।
- डिफॉल्ट साफ बताएं: batch, जब तक latency खुद प्रोडक्ट का हिस्सा न हो।
- happy path के आगे streaming जो असली लागत जोड़ती है, उसका नाम लें।
- बीच का रास्ता, micro batch, सामने रखें।
- अपने काम से दोनों का एक एक उदाहरण दें।
उदाहरण जवाब
मैं यह पूछकर शुरू करता हूं कि इस पर कार्रवाई कौन करता है और कितनी जल्दी। अगर जवाब यह है कि सुबह नौ बजे एक analyst dashboard खोलता है, तो nightly या hourly batch job ही सही फैसला है, क्योंकि वह सस्ता है, आसानी से replay हो जाता है और मैं पिछले मंगलवार को बिना ज्यादा सोचे दोबारा चला सकता हूं। streaming पर मैं तब जाता हूं जब latency सचमुच प्रोडक्ट का हिस्सा हो। एक payments टीम में हमने transaction events को fraud model में stream किया था, क्योंकि नब्बे मिनट बाद लिया गया फैसला बिल्कुल बेकार है। जो बात मैं साफ कहना चाहता हूं वह यह है कि streaming की कीमत क्या है। आपको state stores, watermarks और late data policy विरासत में मिलती है, और यह हकीकत भी कि चलती हुई job पर schema बदलना deploy नहीं, migration होता है। बहुत बार जब कोई stakeholder real time कहता है तो उसका मतलब होता है कल नहीं, और warehouse पर पंद्रह मिनट का micro batch उन्हें वही चीज ऑपरेशनल बोझ के एक छोटे हिस्से में दे देता है।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- मौजूदा batch पाइपलाइन को आप streaming पर कैसे migrate करेंगे?
- lambda architecture क्या हल करती है, और उसकी कीमत क्या है?
- किसी बग के बाद streaming पाइपलाइन का backfill आप कैसे करते हैं?
डेटा इंजीनियर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें