मूली एलएसईटी

Muli Ela Esa Iti



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

रेडिस सूचियों में 0-आधारित अनुक्रमण है। पहला तत्व 0 . के रूप में नामित किया गया है वां अनुक्रमणिका; दूसरा 1 . पर है अनुसूचित जनजाति सूचकांक, और इतने पर। इंडेक्स के साथ पूंछ तत्वों तक पहुंचना नकारात्मक सूचकांकों के साथ संभव है जैसे कि अंतिम तत्व को -1 के रूप में अनुक्रमित किया गया है, अंतिम तत्व -2 है, और इसी तरह।









सूची तत्वों को एलएसईटी कमांड के साथ किसी भी इंडेक्स पर सेट किया जा सकता है, जिसे निम्नलिखित अनुभाग में वर्णित किया गया है।



एलएसईटी कमांड

LSET कमांड निर्दिष्ट कुंजी पर संग्रहीत रेडिस सूची के दिए गए सूचकांक में एक तत्व सेट करता है। इसमें निम्नलिखित सरल वाक्यविन्यास है:





एलएसईटी सूची_कुंजी सूचकांक तत्व

सूची_कुंजी : रेडिस सूची की कुंजी।

अनुक्रमणिका : वह सूचकांक जहाँ आपको एक तत्व सेट करने की आवश्यकता होती है।



तत्व : निर्दिष्ट सूचकांक पर सेट किया जाने वाला स्ट्रिंग तत्व।

यदि तत्व ठीक से सेट किया गया है तो यह आदेश एक साधारण स्ट्रिंग 'ओके' देता है। जब भी इसका सामना किसी ऐसे इंडेक्स से होता है जो सीमा से बाहर होता है, तो LSET कमांड एक त्रुटि देता है।

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

केस का उपयोग करें - सोशल मीडिया पोस्ट अपडेट करें

आइए एक ऐसी घटना की कल्पना करें जहां एक कंपनी अपनी सोशल मीडिया वेबसाइट बनाए रखती है जिसमें हजारों उपयोगकर्ता सक्रिय रूप से पोस्ट और स्टेटस पोस्ट करते हैं। उन्होंने पहचान लिया है कि रेडिस सूचियाँ इन पदों और स्थितियों को रखने के लिए उपयुक्त उम्मीदवार हैं जहाँ बार-बार सम्मिलन होता है, और रेडिस सूचियाँ निरंतर समय में सम्मिलन करती हैं।

आइए किसी दिए गए उपयोगकर्ता आईडी 100 के लिए एक रेडिस सूची बनाएं जिसका उपयोग उस विशेष उपयोगकर्ता के पोस्ट और स्थिति संदेशों को संग्रहीत करने के लिए किया जाएगा। हम यूजर आईडी 100 के लिए कुछ डमी पोस्ट और स्टेटस मैसेज डालने के लिए एलपीयूएसएच कमांड का इस्तेमाल करेंगे।

LPUSH सोशल-मीडिया: उपयोगकर्ता: 100 '2022-08-01: शुरुआत के लिए अच्छा दिन।'
LPUSH सोशल-मीडिया: उपयोगकर्ता: 100 '2022-08-05: linuxhint पर नया काम शुरू किया'
LPUSH सोशल-मीडिया: उपयोगकर्ता: 100 '2022-08-06: आज की शानदार पार्टी'
LPUSH सोशल-मीडिया: उपयोगकर्ता: 100 '2022-08-07: बुरा दिन!!!'

उत्पादन

मान लें कि यूजर आईडी 100 वाला यूजर अपनी एक पुरानी पोस्ट को अपडेट करेगा। मान लीजिए कि उन्होंने जो तीसरी पोस्ट पोस्ट की है उसमें कुछ सुधार की जरूरत है। LSET कमांड इसे आसानी से प्राप्त कर सकता है, जैसा कि निम्नलिखित में दिखाया गया है।

चूँकि तीसरा तत्व शीर्ष से सूचकांक 2 पर है। हम इसे निम्नानुसार अपडेट करेंगे:

एलएसईटी सोशल-मीडिया: उपयोगकर्ता: 100 2 'लिनक्सहिंट में एक लेखक के रूप में नई भूमिका शुरू की'

उत्पादन

जैसा कि अपेक्षित था, कमांड को सफलतापूर्वक निष्पादित किया गया था, और दूसरी अनुक्रमणिका के तत्व को अपडेट किया गया था। आइए सूची को निम्नानुसार दोबारा जांचें:

हम पूंछ से सूचकांक को निम्नानुसार निर्दिष्ट करके ऐसा कर सकते हैं:

एलएसईटी सोशल-मीडिया: उपयोगकर्ता: 100 -2 'लिनक्सहिंट में एक लेखक के रूप में नई भूमिका शुरू की'

जैसा कि अपेक्षित था, तीसरा तत्व नई स्ट्रिंग 'लिनक्सहिंट पर नौकरी शुरू' पर सेट किया गया है।

यदि आप एक सूचकांक निर्दिष्ट करते हैं जो सीमा से बाहर है, तो यह एक त्रुटि उत्पन्न करेगा, जैसा कि निम्नलिखित में दिखाया गया है:

एलएसईटी सोशल-मीडिया: उपयोगकर्ता: 100 6 'लिनक्सहिंट पर काम शुरू हुआ'

उत्पादन

निष्कर्ष

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