अधिक विभाजन बनाएँ और अपने MSK सर्वर रहित क्लस्टर में अधिक समय तक डेटा बनाए रखें

अधिक विभाजन बनाएँ और अपने MSK सर्वर रहित क्लस्टर में अधिक समय तक डेटा बनाए रखें

स्रोत नोड: 1929683

अप्रैल 2022 में, Apache Kafka के लिए Amazon प्रबंधित स्ट्रीमिंग (Amazon MSK) ने एक रोमांचक नई क्षमता लॉन्च की, अमेज़ॅन एमएसके सर्वर रहित. Amazon MSK Apache Kafka के लिए पूरी तरह से प्रबंधित सेवा है जो डेवलपर्स के लिए Apache Kafka पर आधारित अत्यधिक उपलब्ध, सुरक्षित और स्केलेबल एप्लिकेशन बनाना और चलाना आसान बनाती है। एमएसके सर्वरलेस के साथ, डेवलपर्स अपने अपाचे काफ्का क्लस्टर को प्रावधान, कॉन्फ़िगर या अनुकूलित किए बिना अपने एप्लिकेशन चला सकते हैं। MSK सर्वरलेस स्वचालित रूप से गणना और भंडारण संसाधनों का प्रावधान और पैमाना करता है, इसलिए डेवलपर्स के पास ऑन-डिमांड स्ट्रीमिंग क्षमता और भंडारण तक पहुंच होती है।

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

क्लस्टर में विभाजन के लिए उच्च डिफ़ॉल्ट कोटा

Apache Kafka में डेटा को लिखा जाता है विषयों, जिसे कई लॉग फाइलों में विभाजित किया जा सकता है बीसियों. जब कोई निर्माता एप्लिकेशन किसी विषय पर डेटा लिखता है, तो उसे इन विभाजनों में से एक में जोड़ा जाता है। MSK Serverless को प्रति क्लस्टर 120 विभाजन के अधिकतम कोटा के साथ लॉन्च किया गया। हालांकि, हमारे ग्राहकों ने हमें बताया कि उन्हें विभिन्न प्रकार के उपयोग के मामलों के लिए प्रति क्लस्टर अधिक विभाजन की आवश्यकता है, जिसमें परिवर्तन डेटा कैप्चर (सीडीसी) से लेकर वास्तविक समय डेटा प्रोसेसिंग में तेजी शामिल है।

दिसंबर 2022 में, हमने MSK सर्वर रहित क्लस्टर के विभाजन के लिए डिफ़ॉल्ट कोटा बढ़ा दिया। बढ़े हुए कोटा के साथ, आप प्रति क्लस्टर 2,400 विभाजन तक बना सकते हैं। आपके द्वारा प्रति क्लस्टर किए जा सकने वाले विभाजनों की संख्या में 20 गुना वृद्धि से आप प्रति क्लस्टर अधिक विषय बना सकते हैं और अधिक एप्लिकेशन समानांतर में डेटा का उपभोग कर सकते हैं। आप ठीक-ठाक अभिगम नियंत्रण के साथ डेटा के बेहतर अलगाव को भी लागू कर सकते हैं। सीडीसी उपयोग के मामलों के लिए अधिक विभाजन विशेष रूप से उपयोगी होते हैं जहां डेटाबेस में प्रत्येक तालिका में सैकड़ों अनक्यू कुंजियाँ होती हैं, जो प्रत्येक एक अद्वितीय विभाजन के लिए मैप की जाती हैं। अधिक विभाजनों के साथ, आप बहुत सारे तालिकाओं और सैकड़ों चाबियों के साथ बड़े डेटाबेस में परिवर्तनों को कैप्चर करने के लिए MSK सर्वरलेस का उपयोग कर सकते हैं। ध्यान दें कि 2,400 की सीमा केवल लीडर विभाजन पर लागू होती है। MSK Serverless बिना किसी अतिरिक्त लागत के डिफ़ॉल्ट रूप से प्रत्येक विभाजन की दो प्रतिकृतियां बनाता है जो इस सीमा के लिए नहीं गिने जाते हैं।

असीमित डेटा प्रतिधारण अवधि

अपाचे काफ्का उपभोक्ता एपीआई का उपयोग करके डेटा तक पहुंचने की आवश्यकता के आधार पर आपके द्वारा अपने विषयों के लिए उत्पादित डेटा को कॉन्फ़िगर करने योग्य अवधि के लिए अपाचे काफ्का में रखा जा सकता है। आम तौर पर, ग्राहक कुछ घंटों से लेकर कुछ दिनों तक, कम समय के लिए डेटा बनाए रखते हैं। पहले, MSK सर्वर रहित डेटा प्रतिधारण को अधिकतम 24 घंटे (1 दिन) तक सीमित करता था, जो कि सबसे लोकप्रिय Apache Kafka उपयोग मामलों के लिए पर्याप्त है। हालाँकि, कुछ उपयोग मामलों में ग्राहकों को डेटा को लंबे समय तक बनाए रखने की आवश्यकता होती है, जैसे ऑडिट उद्देश्यों के लिए डेटा बनाए रखना या एप्लिकेशन रिकवरी SLAs बनाए रखना।

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

ये नए कोटे उन सभी क्षेत्रों में उपलब्ध हैं जहाँ MSK Serverless उपलब्ध है। अधिक जानकारी के लिए, पर नेविगेट करें एमएसके सर्वर रहित टैब पर अमेज़ॅन एमएसके मूल्य निर्धारण पृष्ठ और चुनिए क्षेत्र ड्रॉप डाउन मेनू।

आप द्वारा विभाजन कोटा की अधिकतम संख्या में वृद्धि का अनुरोध भी कर सकते हैं से संपर्क AWS समर्थन यदि आपको क्लस्टर में 2,400 से अधिक विभाजन की आवश्यकता है। अधिक विभाजन और लंबे समय तक अवधारण के लिए कोटा मौजूदा और नए क्लस्टर दोनों पर लागू होता है।

आरंभ करना: 1,000 विभाजनों और 7-दिनों के प्रतिधारण के साथ एक विषय बनाएँ

इस खंड में, हम प्रदर्शित करते हैं कि MSK सर्वर रहित में एक विषय कैसे बनाया जाए, विभाजनों की संख्या निर्दिष्ट करें, और इसकी अवधारण अवधि निर्धारित करें।

एक शर्त के रूप में, आपके पास एक MSK सर्वर रहित क्लस्टर और एक Apache Kafka क्लाइंट होना चाहिए। को देखें MSK सर्वर रहित क्लस्टर का उपयोग करना प्रारंभ करना चरण-दर-चरण निर्देशों के लिए

  1. अपनी क्लाइंट मशीन पर, access kafka_2.12-2.8.1/bin और निम्नलिखित चलाएँ export कमांड ('my-endpoint' को अपने MSK सर्वर रहित क्लस्टर के बूटस्ट्रैप सर्वर स्ट्रिंग से बदलें):
    export BS=my-endpoint

  2. नामक विषय बनाने के लिए निम्नलिखित कमांड चलाएँ msk-sample-topic 1,000 विभाजन और 7-दिन डेटा प्रतिधारण (604,800,000 मिलीसेकंड) के साथ:
    <path-to-your-kafka-installation>/bin/kafka-topics.sh --bootstrap-server $BS --command-config client.properties --create --topic msk-sample-topic --partitions 1000 --config retention.ms=604800000

  3. (वैकल्पिक) उपरोक्त चरण 2 में आपके द्वारा बनाए गए विषय का विवरण देखने के लिए निम्नलिखित कमांड चलाएँ:
    <path-to-your-kafka-installation>/bin/kafka-topics.sh --bootstrap-server $BS
    --command-config client.properties --topic msk-sample-topic --describe | head -n1

    आप निम्न परिणाम देखेंगे:

    Topic: msk-sample-topic TopicId: Ze76LY9EQuiH0xOIenx_HA PartitionCount: 1000ReplicationFactor: 3 Configs: min.insync.replicas=2,segment.bytes=134217728,retention.ms=604800000,message.format.version=2.8-IV2,unclean.leader.election.enable=false,retention.bytes=268435456000

क्लीन अप

इस पोस्ट में बनाए गए AWS संसाधनों पर लगने वाले शुल्क से बचने के लिए, MSK सर्वर रहित क्लस्टर और अमेज़ॅन इलास्टिक कम्प्यूट क्लाउड (अमेज़ॅन ईसी 2) आपके क्लाइंट मशीन के लिए उदाहरण।

  1. Amazon MSK कंसोल पर, इस समाधान के लिए आपके द्वारा उपयोग किए गए MSK सर्वर रहित क्लस्टर का चयन करें।
  2. चुनें क्रियाएँ, उसके बाद चुनो मिटाना.
  3. Amazon EC2 कंसोल पर, उस उदाहरण का चयन करें जिसे आपने अपने Apache Kafka क्लाइंट मशीन के लिए बनाया था।
  4. चुनें उदाहरण स्थिति, उसके बाद चुनो उदाहरण समाप्त करें.

निष्कर्ष

इस पोस्ट में दिखाया गया है कि 1,000 विभाजन और 7-दिन के अवधारण के साथ MSK सर्वर रहित क्लस्टर विषय कैसे बनाया जाए। नया कोटा बढ़ने के साथ, आप प्रति क्लस्टर 2,400 तक विभाजन बना सकते हैं और जब तक आपको आवश्यकता हो तब तक डेटा बनाए रख सकते हैं। यदि आपके पास टिप्पणियां या फीडबैक हैं, तो कृपया उन्हें टिप्पणियों में छोड़ने के लिए स्वतंत्र महसूस करें।


लेखक के बारे में

उसामा नसीम Amazon MSK के लिए एक वरिष्ठ उत्पाद प्रबंधक है और MSK सर्वरलेस पर ध्यान केंद्रित करता है। पहले, उन्होंने AWS लैम्ब्डा और Amazon Fresh के लिए उत्पाद प्रबंधन की भूमिकाएँ निभाईं। उन्हें ग्राहकों को क्लाउड में रीयल-टाइम एप्लिकेशन बनाने के लिए टूल देने का शौक है। काम के बाहर, वह इस भ्रम में रहता है कि वह एक दिन दुनिया का सर्वश्रेष्ठ स्क्वैश खिलाड़ी होगा।

समय टिकट:

से अधिक एडब्ल्यूएस बिग डेटा

उच्च क्वेरी थ्रूपुट प्राप्त करें: अमेज़ॅन ओपनसर्च सर्वरलेस में ऑटो स्केलिंग अब शार्ड रेप्लिका स्केलिंग का समर्थन करता है | अमेज़न वेब सेवाएँ

स्रोत नोड: 2324266
समय टिकट: अक्टूबर 12, 2023