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

रेडिस में हैशमैप मूल्यों के लिए समाप्ति निर्धारित करें?

नहीं, आप SETEX . के साथ हैश नहीं बना सकते (जो एक तार विधि है)। आप EXPIRE . पर कॉल कर सकते हैं हैश कुंजी पर, लेकिन वह पूरे हैश को समाप्त कर देगा। व्यक्तिगत हैश कुंजी/मान युग्मों की समाप्ति के लिए फिलहाल कोई समर्थन नहीं है।

अपडेट करें:

यदि आप अलग-अलग तत्वों को सेट करते हुए पूरे हैश पर समाप्ति सेट करना चाहते हैं, तो आप इसे कई तरीकों से प्राप्त कर सकते हैं।

  1. पाइपलाइनिंग का प्रयोग करें। पाइपलाइनिंग ऑपरेशन का एक विशेष तरीका है जहां रेडिस क्लाइंट त्वरित उत्तराधिकार में कई आदेश जारी करता है, अगले एक को भेजने के लिए उत्तर की प्रतीक्षा नहीं करता है। यहां रूबी में एक उदाहरण दिया गया है:

    redis.pipelined do
      redis.hset "foo", "bar", 1
      redis.expire "foo", 300
    end
    
  2. लेनदेन का प्रयोग करें। देखे गए चाबियों के बिना यह पाइपलाइनिंग के समान है (लेनदेन के लिए निरस्त नहीं किया जा सकता)। आदेशों को एक साथ और परमाणु रूप से चलाने की गारंटी दी जाती है (कई पाइपलाइन इंटरलीव्ड चल सकती हैं, लेनदेन क्रमबद्ध हैं)

    redis.multi do
      redis.hset "foo", "bar", 1
      redis.expire "foo", 300
    end
    
  3. अपने कस्टम HSETEX कमांड को लागू करने के लिए लुआ स्क्रिप्टिंग का उपयोग करें। इसे परमाणु रूप से निष्पादित किया जाएगा और आपको बस एक कमांड (2(पाइपलाइनिंग) या 4 (लेनदेन) के बजाय) भेजनी होगी।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. स्प्रिंग रेडिस सॉर्ट कुंजियाँ

  2. विभिन्न NoSQL डेटाबेस के लिए त्वरित संदर्भ मार्गदर्शिका

  3. पब/सब में रेडिस क्लस्टर बनाम ज़ीरोएमक्यू, क्षैतिज रूप से स्केल किए गए वितरित सिस्टम के लिए

  4. अतिरिक्त स्ट्रिंग के साथ प्रीफ़िक्स्ड रेडिस क्रमांकन

  5. जावा के साथ क्रमबद्ध रेडिस कुंजी को कैसे ठीक करें