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

रेडिस में वस्तुओं के क्रमबद्ध सेट को कैसे स्टोर करें?

अपने सभी हैश को स्टोर करने के लिए एकल कुंजी का उपयोग करने के लिए कुछ क्रमांकन की आवश्यकता होगी क्योंकि रेडिस नेस्टेड डेटा संरचनाओं का समर्थन नहीं करता है। परिणाम निम्न होगा:

key: users:pro
         |
         +-----> field       value
                 name:Bruce  "age: 20, score: 100"
                 name:Ed     "age: 22, score: 80"

> HMSET users:pro name:Bruce "age: 20, score: 100" name:Ed "age:22, score:80"

संबंधित क्रमबद्ध सेट होगा:

key: users:pro.by_scores
         |
         +---> scores:    80           100
         +---> values: "name:Ed"   "name:Bruce"

> ZADD users:pro.by_scores 80 "name:Ed" 100 "name:Bruce"

नोट 1 :यह दृष्टिकोण प्रति उपयोगकर्ता एक अद्वितीय आईडी को अनिवार्य करता है, वर्तमान में name संपत्ति का उपयोग किया जाता है जो समस्याग्रस्त हो सकता है।

नोट 2 :क्रमांकन (और अक्रमांकन) से बचने के लिए, आप प्रति उपयोगकर्ता एक समर्पित कुंजी का उपयोग करने पर विचार कर सकते हैं। इसका मतलब है करना:

key: users:pro:Bruce
         |
         +-----> field       value
                 age         20
                 score       100

key: users:pro:Ed
         |
         +-----> field       value
                 age         22
                 score       80

> HMSET users:pro:Bruce age 20 score 100
> HMSET users:pro:Ed age 22 score 80

key: users:pro.by_scores
         |
         +---> scores:      80                100
         +---> values: "users:pro:Ed"   "users:pro:Bruce"

> ZADD users:pro.by_scores 80 "users:pro:Ed" 100 "users:pro:Bruce"



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नोड रेडिस, चर ग्राहकों के बीच साझा किए जाते हैं?

  2. रेडिस में हैश की सरणी कैसे स्टोर करें?

  3. हाइड्रा-सीएलआई को पासवर्ड से जोड़ने से रेडिस सर्वर की सुरक्षा होती है?

  4. रेडिस में नेस्टेड संरचनाओं के विकल्प?

  5. रेडिस सिंगल थ्रेडेड क्यों है (घटना संचालित)