MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मोंगोडीबी और काफ्का के साथ नोएसक्यूएल डेटा स्ट्रीमिंग

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

MongoDB को "डेटाबेस" के तहत वर्गीकृत किया गया है, जबकि काफ्का तकनीकी स्टैक की "संदेश कतार" श्रेणी से संबंधित है। डेवलपर्स काफ्का को "उच्च-थ्रूपुट", "वितरित" और "स्केलेबल" को प्रमुख कारक मानते हैं; जबकि "दस्तावेज़-उन्मुख भंडारण", "कोई SQL नहीं" और "उपयोग में आसानी" को MongoDB के पसंदीदा होने का प्राथमिक कारण माना जाता है।

काफ्का में डेटा स्ट्रीमिंग

आज के डेटा पारिस्थितिकी तंत्र में, कोई एक प्रणाली नहीं है जो डेटा की वास्तविक अंतर्दृष्टि प्रदान करने के लिए सभी आवश्यक दृष्टिकोण प्रदान कर सके। डेटा से डेटा अंतर्दृष्टि का बेहतर विज़ुअलाइज़ेशन प्राप्त करने के लिए कई डेटा स्रोतों से बड़ी मात्रा में जानकारी को मिलाने की आवश्यकता होती है। जैसे, हम तुरंत उत्तर पाने के लिए उत्सुक हैं; यदि डेटा अंतर्दृष्टि का विश्लेषण करने में लगने वाला समय 10 मिलीसेकंड से अधिक हो जाता है, तो मान खो जाता है या अप्रासंगिक हो जाता है। धोखाधड़ी का पता लगाने, उच्च आवृत्ति व्यापार, और अनुशंसा इंजन जैसे अनुप्रयोग प्रतीक्षा करने का जोखिम नहीं उठा सकते हैं। डेटा हानि के लिए शून्य सहनशीलता के साथ रिकॉर्ड के डेटाबेस के रूप में अद्यतन होने से पहले इस ऑपरेशन को डेटा के प्रवाह का विश्लेषण करने के रूप में भी जाना जाता है, और चुनौती और भी कठिन हो जाती है।

काफ्का आपको कई डेटा स्रोतों से विश्वसनीय रूप से बड़ी मात्रा में डेटा को अंतर्ग्रहण और त्वरित रूप से स्थानांतरित करने में मदद करता है और फिर इसे उन सिस्टम पर पुनर्निर्देशित करता है जिन्हें फ़िल्टरिंग, एकत्रीकरण और मार्ग में विश्लेषण करके इसकी आवश्यकता होती है। काफ्का में उच्च थ्रूपुट, विश्वसनीयता और प्रतिकृति विशेषताएं हैं, जो एक या अधिक काफ्का उत्पादकों से एक या अधिक काफ्का उपभोक्ताओं के लिए घटना डेटा की धाराओं को संप्रेषित करने के लिए एक स्केलेबल विधि है। घटनाओं के उदाहरणों में शामिल हैं:

  • समय-समय पर लिए गए वायु प्रदूषण के आंकड़े
  • ऑनलाइन स्टोर में शॉपिंग कार्ट में आइटम जोड़ने वाला उपभोक्ता
  • एक विशिष्ट हैशटैग के साथ पोस्ट किया गया ट्वीट

काफ्का घटनाओं की धाराओं को पूर्वनिर्धारित विषयों में कैप्चर और व्यवस्थित किया जाता है। काफ्का निर्माता किसी दिए गए ईवेंट को भेजने के लिए एक विषय चुनता है, और उपभोक्ता चुनते हैं कि वे किन विषयों से ईवेंट खींचते हैं। उदाहरण के लिए, एक स्टॉक मार्केट वित्तीय एप्लिकेशन ट्रेडिंग के अवसरों की तलाश के लिए स्टॉक ट्रेडों को एक विषय से और कंपनी की वित्तीय जानकारी को दूसरे से खींच सकता है।

MongoDB और काफ्का सहयोग आज कई आधुनिक डेटा आर्किटेक्चर का केंद्र है। काफ्का को डेटा की असीमित धाराओं के लिए डिज़ाइन किया गया है जो क्रमिक रूप से घटनाओं को प्रतिबद्ध लॉग में लिखता है, जिससे काफ्का कनेक्ट के उपयोग के माध्यम से मोंगोडीबी और काफ्का के बीच रीयल-टाइम डेटा मूवमेंट की अनुमति मिलती है।

काफ्का के लिए आधिकारिक MongoDB कनेक्टर विकसित किया गया था और MongoDB Inc. इंजीनियर। यह कंफ्लुएंट द्वारा भी सत्यापित किया जाता है (जिन्होंने एंटरप्राइज-रेडी इवेंट स्ट्रीमिंग प्लेटफॉर्म का बीड़ा उठाया है), जो कंफ्लुएंट के वेरिफाइड इंटीग्रेशन प्रोग्राम द्वारा निर्धारित दिशानिर्देशों के अनुरूप है। कनेक्टर MongoDB को सिंक और काफ्का के स्रोत दोनों के रूप में कॉन्फ़िगर करने में सक्षम बनाता है। आसानी से मजबूत, प्रतिक्रियाशील डेटा पाइपलाइन बनाएं जो वास्तविक समय में एप्लिकेशन और सेवाओं के बीच घटनाओं को स्ट्रीम करें।

MongoDB सिंक कनेक्टर

मोंगोडीबी सिंक हमें काफ्का से हमारे मोंगोडीबी इंस्टेंस तक की घटनाओं को लिखने की अनुमति देता है। सिंक कनेक्टर काफ्का कनेक्ट सिंक रिकॉर्ड्स से मान को एक मोंगोडीबी दस्तावेज़ में परिवर्तित करता है और आपके द्वारा चुने गए कॉन्फ़िगरेशन के आधार पर एक इंसर्ट या अप्सर्ट करेगा। यह उम्मीद करता है कि डेटाबेस पहले से बनाया गया है, लक्षित MongoDB संग्रह बनाया गया है यदि वे मौजूद नहीं हैं।

मोंगोडीबी काफ्का स्रोत कनेक्टर

MongoDB काफ्का स्रोत कनेक्टर MongoDB प्रतिकृति से डेटा को काफ्का क्लस्टर में स्थानांतरित करता है। कनेक्टर परिवर्तन स्ट्रीम ईवेंट दस्तावेज़ों को कॉन्फ़िगर और उपभोग करता है और उन्हें किसी विषय पर प्रकाशित करता है। स्ट्रीम बदलें, MongoDB 3.6 में पेश की गई एक सुविधा, ईवेंट दस्तावेज़ उत्पन्न करती है जिसमें वास्तविक समय में MongoDB में संग्रहीत डेटा में परिवर्तन होते हैं और स्थायित्व, सुरक्षा और निष्क्रियता की गारंटी प्रदान करते हैं। आप संग्रह, डेटाबेस या परिनियोजन स्तर पर परिवर्तनों को देखने के लिए परिवर्तन स्ट्रीम कॉन्फ़िगर कर सकते हैं। यह परिवर्तन स्ट्रीम बनाने और काफ्का क्लस्टर में सहेजने के लिए आउटपुट को अनुकूलित करने के लिए निम्न सेटिंग्स का उपयोग करता है। यह परिवर्तित डेटा ईवेंट को एक काफ्का विषय पर प्रकाशित करेगा जिसमें डेटाबेस और संग्रह नाम शामिल है जिससे परिवर्तन उत्पन्न हुआ।

 MongoDB और काफ्का उपयोग के मामले

ईकामर्स वेबसाइटें

एक ईकामर्स वेबसाइट के मामले का उपयोग करें जिससे इन्वेंट्री डेटा MongoDB में संग्रहीत किया जाता है। जब उत्पाद की स्टॉक इन्वेंट्री एक निश्चित सीमा से नीचे चली जाती है, तो कंपनी स्टॉक बढ़ाने के लिए एक स्वचालित ऑर्डर देना चाहेगी। आदेश देने की प्रक्रिया MongoDB के बाहर अन्य प्रणालियों द्वारा की जाती है, और इस तरह के इवेंट-संचालित सिस्टम के लिए काफ्का का उपयोग मंच के रूप में एक साथ उपयोग किए जाने पर MongoDB और Kafka की शक्ति का एक बड़ा उदाहरण है।

वेबसाइट गतिविधि ट्रैकिंग

साइट गतिविधि जैसे विज़िट किए गए पृष्ठ या प्रस्तुत किए गए विज्ञापन काफ्का विषयों में कैप्चर किए जाते हैं - प्रति डेटा प्रकार एक विषय। फिर उन विषयों को कई कार्यों जैसे निगरानी, ​​​​वास्तविक समय विश्लेषण, या ऑफ़लाइन विश्लेषण के लिए संग्रह द्वारा उपभोग किया जा सकता है। MongoDB जैसे परिचालन डेटाबेस में संग्रहीत डेटा से अंतर्दृष्टि, जहां अन्य स्रोतों से डेटा के साथ उनका विश्लेषण किया जा सकता है।

इंटरनेट ऑफ थिंग्स (IoT)

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

निष्कर्ष

MongoDB गैर-संबंधपरक डेटाबेस के रूप में जाना जाता है, जो एक मुक्त और खुले स्रोत लाइसेंस के तहत प्रकाशित होता है, MongoDB मुख्य रूप से एक दस्तावेज़-उन्मुख डेटाबेस है, जिसका उद्देश्य अर्ध-संरचित डेटा जैसे उपयोग के लिए है। पाठ दस्तावेज़। यह सबसे लोकप्रिय आधुनिक डेटाबेस है जिसे विषम डेटा के विशाल और बड़े पैमाने पर संचालन के लिए बनाया गया है।

काफ्का एक व्यापक रूप से लोकप्रिय वितरित स्ट्रीमिंग प्लेटफॉर्म है जिसका उपयोग न्यू रेलिक, उबर और स्क्वायर जैसी हजारों कंपनियां स्केलेबल, उच्च-थ्रूपुट और विश्वसनीय रीयल-टाइम स्ट्रीमिंग सिस्टम बनाने के लिए करती हैं।

MongoDB और Kafka साथ में हमारे डेटा पारिस्थितिकी तंत्र और कई आधुनिक डेटा आर्किटेक्चर में महत्वपूर्ण भूमिका निभाते हैं।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. स्लैक से चैटऑप्स के साथ MySQL, MongoDB और PostgreSQL का प्रबंधन

  2. MongoDB में एक सम्मिलित दस्तावेज़ का _id प्राप्त करें?

  3. कैसे एक एम्बेडेड सरणी में एक अद्यतन के बाद नया मान वापस पाने के लिए?

  4. Mongodb में किसी फ़ील्ड में सबस्ट्रिंग कैसे खोजें?

  5. Node.js/Express और Mongoose का उपयोग करके MongoDB में एक छवि संग्रहीत करें