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

रेडिस को कैसे पता चलेगा कि उसे कैश्ड डेटा या डीबी से ताजा डेटा वापस करना है?

रेडिस को पता नहीं है कि डीबी में डेटा अपडेट किया गया है या नहीं।

आम तौर पर, हम डेटा को कैश करने के लिए रेडिस का उपयोग इस प्रकार करते हैं:

  1. क्लाइंट जांचता है कि क्या डेटा, उदा. की-वैल्यू पेयर, रेडिस में मौजूद है।
  2. यदि कुंजी मौजूद है, तो क्लाइंट को Redis से संबंधित मान प्राप्त होता है।
  3. अन्यथा, यह डीबी से डेटा प्राप्त करता है, और इसे रेडिस पर सेट करता है। साथ ही क्लाइंट एक समय सीमा समाप्ति सेट करता है, जैसे 5 मिनट, रेडिस में की-वैल्यू पेयर के लिए।
  4. फिर उसी कुंजी के बाद के किसी भी अनुरोध को Redis द्वारा परोसा जाएगा। हालांकि रेडिस में डेटा पुराना हो सकता है।
  5. हालांकि, 5 . के बाद मिनट, यह कुंजी स्वचालित रूप से Redis से हटा दी जाएगी।
  6. चरण 1 पर जाएं।

इसलिए अपने डेटा को रेडिस में अपडेट-टू-डेट रखने के लिए, आप एक छोटा समाप्ति समय निर्धारित कर सकते हैं। हालाँकि, आपके DB को बहुत सारे अनुरोध करने हैं।

यदि आप डीबी के अनुरोधों को काफी हद तक कम करना चाहते हैं, तो आप एक बड़ा समाप्ति समय निर्धारित कर सकते हैं। ताकि, ज्यादातर समय, Redis संभावित रुके हुए डेटा के साथ अनुरोधों को पूरा कर सके।

आपको प्रदर्शन और रुके हुए डेटा के बीच ट्रेड-ऑफ़ के बारे में ध्यान से विचार करना चाहिए।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. रेडिस सहयोगी सरणी कैसे स्टोर करें? सेट या हैश या सूची?

  2. एचएसईटी यदि कुंजी मौजूद है

  3. Redis क्या mset का उपयोग करके कई hset कुंजियों (फ़ील्ड नहीं) को अपडेट करना संभव है

  4. रेडिस बनाम मोंगोडीबी:पेरकोना मेमोरी इंजन के साथ इन-मेमोरी डेटाबेस की तुलना करना

  5. रेडिस प्रदर्शन, जसन ऑब्जेक्ट को एक स्ट्रिंग के रूप में संग्रहीत करें