रेडिस एमजीईटी

Redisa Emaji Iti



रेडिस स्ट्रिंग्स की व्याख्या

तार रेडिस डेटाबेस द्वारा पेश की गई सबसे बुनियादी और मौलिक डेटा संरचना है। रेडिस स्ट्रिंग्स बाइट्स के बाइनरी सुरक्षित अनुक्रम हैं। वे जावा और c#.net जैसी प्रोग्रामिंग भाषाओं में उपलब्ध सामान्य स्ट्रिंग्स की तरह हैं। सबसे महत्वपूर्ण बात यह है कि रेडिस स्ट्रिंग्स का उपयोग आपकी पसंद की लगभग किसी भी चीज़ को स्टोर करने के लिए किया जा सकता है जैसे कि स्ट्रिंग्स, पूर्णांक, क्रमबद्ध JSONs, XML और बाइनरी मान। चूंकि रेडिस स्ट्रिंग डेटा प्रकार बाइनरी सुरक्षित है, इसलिए बाइनरी ऑब्जेक्ट्स जैसे छवियों, वीडियो और दस्तावेज़ों को स्ट्रिंग्स का उपयोग करके आसानी से संग्रहीत किया जा सकता है। इसके अलावा, एक सिंगल रेडिस स्ट्रिंग 512MB तक डेटा को होल्ड कर सकती है।







इसके अलावा, रेडिस स्ट्रिंग डेटा संरचना आमतौर पर निम्नलिखित उपयोग के मामलों में उपयोग की जाती है:



  • कैशिंग
    • सत्र भंडारण
    • एपीआई प्रतिक्रियाएं
    • एचटीएमएल पेज
  • विरोध करना
  • बिटमैप कार्यान्वयन और बिटवाइज़ संचालन

ज्यादातर इस्तेमाल किए जाने वाले स्ट्रिंग ऑपरेशन SET, GET, MGET और SETNX हैं। INCRBY और INCRBYFLOAT कमांड का उपयोग आमतौर पर Redis स्ट्रिंग डेटा संरचना का उपयोग करके लागू किए गए काउंटरों को प्रबंधित करने के लिए किया जाता है। इस ट्यूटोरियल में, एमजीईटी कमांड विस्तृत है।



एमजीईटी कमांड का खुलासा

MGET कमांड का उपयोग दी गई रेडिस कुंजियों के मूल्यों को पुनः प्राप्त करने के लिए किया जाता है। यह एक या अधिक कुंजियों को तर्क के रूप में स्वीकार करता है। इसके अलावा, एमजीईटी कमांड ओ (एन) समय जटिलता पर काम करता है जहां एन निर्दिष्ट चाबियों की संख्या है। MGET कमांड का सिंटैक्स इस प्रकार है:





एमजीईटी कुंजी [ चाभी ... ]

एमजीईटी कमांड के निष्पादन पर, यह निर्दिष्ट रेडिस कुंजी पर संग्रहीत मानों की एक सरणी देता है। यदि कुंजी मौजूद नहीं है, तो यह विशेष मान लौटाता है शून्य इसी तरह, यदि कुंजी में कोई स्ट्रिंग मान नहीं है, तो a शून्य मान वापस कर दिया जाता है।

केस का प्रयोग करें: सभी कैश्ड एपीआई प्रतिक्रियाएं प्राप्त करें

आइए एक परिदृश्य मान लें जहां Redis स्ट्रिंग डेटा प्रकार का उपयोग कैश को लागू करने के लिए किया जाता है जिसमें हाल ही में API प्रतिक्रियाएं होती हैं। हम प्रदर्शन उद्देश्यों के लिए कुछ डमी एपीआई प्रतिक्रियाओं को संग्रहीत करने के लिए SET कमांड का उपयोग करते हैं।



समूह डमीहोस्ट / ग्राहकों 'रिकी, बर्नार्ड, मैरी, सैमुअल, जो' समूह डमीहोस्ट / आपूर्तिकर्ताओं 'जिमी, जेरेमी, एंड्रयू, हेरा' समूह डमीहोस्ट / चालान '{'चालान': [{'चालान_आईडी': 1, 'चालान_भुगतान': 1000}, {'चालान_आईडी': 2, 'चालान_भुगतान': 3400}]}'

हम Redis स्ट्रिंग डेटा प्रकार का उपयोग करके कुछ स्ट्रिंग मान और एक क्रमबद्ध JSON ऑब्जेक्ट संग्रहीत करते हैं।

अब, प्रत्येक एपीआई कॉल में सभी प्रतिक्रियाओं को एक बार में पुनः प्राप्त करने के लिए एमजीईटी कमांड का उपयोग करें।

डमीहोस्ट / ग्राहक डमीहोस्ट / आपूर्तिकर्ता डमीहोस्ट / चालान

आउटपुट:

1 ) 'रिकी, बर्नार्ड, मैरी, सैमुअल, जो'

दो ) 'जिमी, जेरेमी, एंड्रयू, हेरा'

3 ) '{' चालान ': [{' चालान आईडी ': 1,' चालान भुगतान ':1000}, {' चालान आईडी ': दो, ' चालान भुगतान ':3400}]}'

जैसा कि अपेक्षित था, प्रत्येक कुंजी में मान एक सरणी के रूप में लौटाए जाते हैं।

एक गैर-मौजूदा कुंजी निर्दिष्ट करना

जैसा कि उल्लेख किया गया है, MGET कमांड विशेष मान लौटाता है शून्य जब एक गैर-मौजूदा कुंजी प्रदान की जाती है। आइए एमजीईटी कमांड में 'नॉन-मौजूदा कुंजी' नामक एक गैर-मौजूदा कुंजी निर्दिष्ट करें और पिछले उदाहरण को निम्नानुसार निष्पादित करें:

डमीहोस्ट / ग्राहक डमीहोस्ट / आपूर्तिकर्ता डमीहोस्ट / चालान गैर-मौजूदाकुंजी

जैसा कि आप देख सकते हैं, सरणी में अंतिम मान है शून्य जो गैर-मौजूदा रेडिस कुंजी से जुड़ा है।

कुल मिलाकर, एमजीईटी कमांड एक आदर्श उम्मीदवार है जब हमें जीईटी कमांड को कई बार कॉल करने के बजाय एक कॉल में कई कुंजियों पर संग्रहीत स्ट्रिंग मानों को पुनः प्राप्त करने की आवश्यकता होती है।

निष्कर्ष

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