मुझे उत्सुकता है कि यह एक पूर्ण आवश्यक है कि स्पार्क स्ट्रीमिंग एप्लिकेशन को अच्छी तरह से लाया गया है या यह लिखने वाले लॉग के माध्यम से डुप्लिकेट डेटा उत्पन्न करने का जोखिम चलाता है। नीचे दिए गए परिदृश्य में मैं उन चरणों के अनुक्रम की रूपरेखा तैयार करता हूं जहां एक कतार रिसीवर कतार के साथ इंटरैक्ट करता है, संदेशों के लिए स्वीकृति की आवश्यकता होती है।क्या एक विश्वसनीय रिसीवर लागू करना संभव है जो गैर-सुंदर शट डाउन का समर्थन करता है?
- स्पार्क कतार रिसीवर कतार से संदेशों का एक बैच खींचता है।
- स्पार्क कतार रिसीवर संदेशों के बैच को लिखने-आगे लॉग में संग्रहीत करता है।
- कर्क पर एक एक भेजा जाने से पहले स्पार्क एप्लिकेशन समाप्त हो जाता है।
- स्पार्क एप्लिकेशन फिर से शुरू होता है।
- लेखन-आगे लॉग में संदेश स्ट्रीमिंग एप्लिकेशन के माध्यम से संसाधित किए जाते हैं।
- स्पार्क कतार रिसीवर कतार से संदेशों का एक बैच खींचता है जो चरण 1 में पहले ही देखा जा चुका है क्योंकि उन्हें प्राप्तकर्ता के रूप में स्वीकार नहीं किया गया था।
- ...
मेरी समझ यह है कि यह साथ आने दोहराव की समस्याओं, और यह सामान्य है एक सुंदर बंद की आवश्यकता होती है करने के लिए कैसे कस्टम रिसीवर लागू किया जाना चाहिए पर सही है?