2017-02-06 9 views
8

मुझे कंफ्लुएंट जेडीबीसी कनेक्टर के साथ काम करने में काफी अजीब व्यवहार का अनुभव हो रहा है। मुझे पूरा यकीन है कि यह कंफ्लुएंट स्टैक से संबंधित नहीं है, लेकिन कफका-कनेक्ट फ्रेमवर्क से ही संबंधित है।काफ्का-कनेक्ट सिंक कार्य फ़ाइल ऑफ़सेट स्टोरेज प्रॉपर्टी को अनदेखा करता है

तो, मैं offset.storage.file.filename संपत्ति को /tmp/connect.offsets डिफ़ॉल्ट रूप से परिभाषित करता हूं और अपना सिंक कनेक्टर चलाता हूं। जाहिर है, मैं कनेक्टर को दी गई फ़ाइल में ऑफ़सेट जारी रखने की अपेक्षा करता हूं (यह फ़ाइल सिस्टम पर मौजूद नहीं है, लेकिन इसे स्वचालित रूप से बनाया जाना चाहिए, है ना?)। प्रलेखन कहते हैं:

offset.storage.file.filename फ़ाइल में कनेक्टर ऑफसेट स्टोर करने के लिए डिस्क पर ऑफसेट भंडारण करके, एक स्टैंडअलोन प्रक्रिया को रोका जा सकता है और एक ही नोड पर शुरू कर दिया और फिर से शुरू है, जहां यह पहले से रोका गया था।।

लेकिन काफ्का पूरी तरह से अलग तरीके से व्यवहार करता है।

  1. यह जांचता है कि दी गई फ़ाइल मौजूद है या नहीं।
  2. यह नहीं है, कफका सिर्फ इसे अनदेखा करता है और काफ्का विषय में ऑफसेट रखता है।
  3. यदि मैं मैन्युअल रूप से दी गई फ़ाइल बना देता हूं, तो पढ़ना विफल रहता है (EOFException) और ऑफसेट को फिर से विषय में रखा जा रहा है।

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

+0

क्या आपने कभी इसे हल किया है? मैं एक वही व्यवहार देख रहा हूं जिसमें एक लोचदार खोज कफका कनेक्ट सिंक स्टैंडअलोन मोड में चल रहा है। – John

+0

@ जॉन, दुर्भाग्य से नहीं, मैं किसी भी अद्यतन – bsiamionau

उत्तर

0

संपत्ति offset.storage.file.filename केवल स्टैंडअलोन मोड में चल रहा श्रमिकों के लिए लागू होता है। यदि आप कफका विषय में काफका लगातार ऑफसेट देख रहे हैं, तो आप वितरित मोड में चल रहे हैं। आपको प्रदान किए गए स्क्रिप्ट connect-standalone के साथ अपना कनेक्टर लॉन्च करना चाहिए। विभिन्न मोड here का विवरण है। विभिन्न मोड में चलने के निर्देश here हैं।

+0

नहीं है चाल है कि मैं स्टैंडअलोन मोड – bsiamionau

+0

मैं एक Elasticsearch काफ्का कनेक्ट चला रहा हूँ में कार्यकर्ता चलाने स्टैंडअलोन मोड में सिंक और एक ही व्यवहार देख रहा हूँ, यानी 'offset.storage है .file.filename' फ़ाइल नहीं बनाई है और ऑफसेट कहीं कायम किया जा रहा होना दिखाई देते हैं। – John

+1

सिंक कनेक्टर्स काफ्का उपभोक्ता समूह कार्यक्षमता का उपयोग ऑफसेट स्टोर करने के लिए। ऑफसेट फ़ाइल या कनेक्ट के लिए विषय वास्तव में केवल सामान्य रूप में स्रोत कनेक्टर्स पर लागू होता है। – dawsaw

संबंधित मुद्दे