रेडिस: Difference between revisions
No edit summary |
No edit summary |
||
| Line 33: | Line 33: | ||
रेडिस को बीएसडी 3-क्लॉज लाइसेंस के अनुसार जारी किया गया है।<ref name="github20190227" /> | रेडिस को बीएसडी 3-क्लॉज लाइसेंस के अनुसार जारी किया गया है।<ref name="github20190227" /> | ||
==इतिहास== | ==इतिहास== | ||
[[File:Salvatore Sanfilippo.png|right|thumb|रेडिस के मूल डेवलपर साल्वाटोर सैनफिलिपो (2015 में ली गई तस्वीर)]]रेडिस नाम का अर्थ रिमोट डिक्शनरी सर्वर है।<ref name="RedisFAQ" />रेडिस परियोजना तब प्रारंभ हुई जब रेडिस के मूल डेवलपर, सल्वाटोर सैनफिलिपो, उपनाम एंटीरेज़, एक | [[File:Salvatore Sanfilippo.png|right|thumb|रेडिस के मूल डेवलपर साल्वाटोर सैनफिलिपो (2015 में ली गई तस्वीर)]]रेडिस नाम का अर्थ रिमोट डिक्शनरी सर्वर होता है।<ref name="RedisFAQ" /> रेडिस परियोजना तब प्रारंभ हुई जब रेडिस के मूल डेवलपर, सल्वाटोर सैनफिलिपो, उपनाम एंटीरेज़, एक रीयल-टाइम वेब लॉग विश्लेषक विकसित करके अपने स्टार्टअप की स्केलेबिलिटी में सुधार करने की कोशिश कर रहे थे। पारंपरिक डेटाबेस सिस्टम का उपयोग करके कुछ प्रकार के वर्कलोड को स्केल करने में महत्वपूर्ण समस्याओं का सामना करने के बाद, सैनफिलिपो ने 2009 में [[ टी.सी.एल |टी.सी.एल]] में रेडिस के अवधारणा संस्करण के पहले प्रमाण का प्रोटोटाइप बनाना प्रारंभ किया था।<ref>{{cite web |title=रेडिस का टीसीएल प्रोटोटाइप|date=April 28, 2017 |website=GitHub Gist |last=Sanfilippo |first=Salvatore |url=https://gist.github.com/antirez/6ca04dd191bdb82aad9fb241013e88a8 |access-date=October 8, 2018}}</ref> बाद में सैनफिलिपो ने उस प्रोटोटाइप का सी लैंग्वेज में अनुवाद किया और पहला डेटा प्रकार, सूची प्रस्तुत किया। परियोजना को आंतरिक रूप से सफलता के साथ उपयोग करने के कुछ हफ्तों के बाद, सैनफिलिपो ने [[ हैकर समाचार |हैकर समाचार]] पर परियोजना की घोषणा करते हुए इसे प्रस्तुत करने का फैसला किया। इस परियोजना को विशेष रूप से रूबी समुदाय के बीच लोकप्रियता मिलनी प्रारंभ हुई थी, गिटहब और [[ Instagram |इंस्टाग्राम]] इसे अपनाने वाली पहली कंपनियों में से एक थे।<ref>{{cite web |title=रेसक्यू का परिचय|date=November 3, 2009 |website=Blog |last=Wanstrath |first=Chris |url=https://blog.github.com/2009-11-03-introducing-resque/ |access-date=October 8, 2018}}</ref><ref>{{cite web |url=https://instagram-engineering.com/storing-hundreds-of-millions-of-simple-key-value-pairs-in-redis-1091ae80f74c |title=रेडिस में करोड़ों सरल कुंजी-मूल्य जोड़े संग्रहीत करना|date=October 31, 2011 |last=Krieger |first=Mike |website=Instagram Engineering Blog |access-date=October 8, 2018}}</ref> | ||
मार्च, 2010 में [[ VMware |VMware]] द्वारा सैनफिलिपो को काम पर रखा गया था।<ref>{{cite web |title=VMware Hires Redis Key Developer – But Why? |date=March 17, 2010 |website=Blog |last=Shapira |first=Gwen |url=https://prodlife.wordpress.com/2010/03/17/vmware-hires-redis-key-developer-but-why/ |access-date=September 25, 2016}}</ref><ref>{{cite web |title=VMware: the new Redis home |website=Blog |date=March 15, 2010 |last=Sanfilippo |first=Salvatore |url=http://antirez.com/post/vmware-the-new-redis-home.html |access-date=September 25, 2016}}</ref><ref>{{cite web |url=http://blogs.vmware.com/console/2010/03/vmware-hires-key-developer-for-redis.html |title=VMware: The Console: VMware hires key developer for Redis |website=VMware Blog |date=March 15, 2010 |last=Collison |first=Derek |archive-url=https://web.archive.org/web/20100322191425/http://blogs.vmware.com/console/2010/03/vmware-hires-key-developer-for-redis.html |archive-date=March 22, 2010 |access-date=September 25, 2016 |url-status=dead }}</ref> | मार्च, 2010 में [[ VMware |VMware]] द्वारा सैनफिलिपो को काम पर रखा गया था।<ref>{{cite web |title=VMware Hires Redis Key Developer – But Why? |date=March 17, 2010 |website=Blog |last=Shapira |first=Gwen |url=https://prodlife.wordpress.com/2010/03/17/vmware-hires-redis-key-developer-but-why/ |access-date=September 25, 2016}}</ref><ref>{{cite web |title=VMware: the new Redis home |website=Blog |date=March 15, 2010 |last=Sanfilippo |first=Salvatore |url=http://antirez.com/post/vmware-the-new-redis-home.html |access-date=September 25, 2016}}</ref><ref>{{cite web |url=http://blogs.vmware.com/console/2010/03/vmware-hires-key-developer-for-redis.html |title=VMware: The Console: VMware hires key developer for Redis |website=VMware Blog |date=March 15, 2010 |last=Collison |first=Derek |archive-url=https://web.archive.org/web/20100322191425/http://blogs.vmware.com/console/2010/03/vmware-hires-key-developer-for-redis.html |archive-date=March 22, 2010 |access-date=September 25, 2016 |url-status=dead }}</ref> | ||
मई, 2013 में, रेडिस को [[ निर्णायक सॉफ्टवेयर |निर्णायक सॉफ्टवेयर]] (एक वीएमवेयर स्पिन-ऑफ) द्वारा प्रायोजित किया गया था।<ref>{{cite web |url=https://redis.io/topics/sponsors |title=रेडिस प्रायोजक|last=Sanfilippo |first=Salvatore |website=Redis.io |publisher=Redis Labs |access-date=April 11, 2019}}</ref> | मई, 2013 में, रेडिस को [[ निर्णायक सॉफ्टवेयर |निर्णायक सॉफ्टवेयर]] (एक वीएमवेयर स्पिन-ऑफ) द्वारा प्रायोजित किया गया था।<ref>{{cite web |url=https://redis.io/topics/sponsors |title=रेडिस प्रायोजक|last=Sanfilippo |first=Salvatore |website=Redis.io |publisher=Redis Labs |access-date=April 11, 2019}}</ref> | ||
जून 2015 में, विकास रेडिस लैब्स द्वारा प्रायोजित हो | |||
अक्टूबर 2018 में, रेडिस 5.0 जारी किया गया था, जिसमें रेडिस स्ट्रीम | जून 2015 में, विकास रेडिस लैब्स द्वारा प्रायोजित हो गया था।<ref>{{cite web |url=http://antirez.com/news/91 |title=धन्यवाद पिवोटल, हेलो रेडिस लैब्स|date=July 15, 2015 |last=Sanfilippo |first=Salvatore |website=<antirez> |access-date=2019-04-03}}</ref> | ||
जून 2020 में, साल्वाटोर सैनफिलिपो ने रेडिस अनुरक्षक के रूप में पद छोड़ | |||
अक्टूबर 2018 में, रेडिस 5.0 जारी किया गया था, जिसमें रेडिस स्ट्रीम का प्रारंभ किया गया था - यह एक नई डेटा संरचना है जो एक ही कुंजी पर स्वचालित, समय-आधारित अनुक्रम के साथ कई स्ट्रिंग मानों को संग्रहीत करने की अनुमति देती है।<ref name="redis.com">{{Cite web|url=https://redis.com/blog/redis-5-0-is-here/|title = Redis 5.0 is here!|date = 22 October 2018}}</ref> | |||
जून 2020 में, साल्वाटोर सैनफिलिपो ने रेडिस अनुरक्षक के रूप में पद छोड़ दिया था।<ref>https://www.theregister.com/2020/06/30/redis_creator_antirez_quits/ source</ref><ref>{{Cite web|title=रेडिस साहसिक कार्य का अंत -|url=http://antirez.com/news/133|access-date=2020-11-10|website=antirez.com}}</ref> | |||
==अन्य डेटाबेस प्रणालियों से अंतर== | ==अन्य डेटाबेस प्रणालियों से अंतर== | ||
रेडिस ने एक ऐसे सिस्टम के विचार को लोकप्रिय बनाया जिसे एक ही समय में स्टोर और कैश (कंप्यूटिंग) | रेडिस ने एक ऐसे सिस्टम के विचार को लोकप्रिय बनाया जिसे एक ही समय में स्टोर और कैश (कंप्यूटिंग) करा जा सकता है। इसे इस तरह से डिज़ाइन किया गया था जो डेटा को हमेशा संशोधित करता है और मुख्य कंप्यूटर मेमोरी से पढ़ा जाता है, लेकिन डिस्क पर ऐसे प्रारूप में भी संग्रहीत किया जाता है जो यादृच्छिक डेटा एक्सेस के लिए अनुपयुक्त होते है। सिस्टम के पुनरारंभ होने के बाद ही स्वरूपित डेटा को मेमोरी में पुनर्निर्मित किया जाता है। | ||
रेडिस एक डेटा मॉडल भी प्रदान करता है जो [[ संबंधपरक डेटाबेस प्रबंधन प्रणाली |संबंधपरक डेटाबेस प्रबंधन प्रणाली]] (आरडीबीएमएस) की तुलना में बहुत असामान्य है। उपयोगकर्ता कमांड डेटाबेस इंजन द्वारा निष्पादित की जाने वाली क्वेरी का वर्णन नहीं करते है, | रेडिस एक डेटा मॉडल भी प्रदान करता है जो [[ संबंधपरक डेटाबेस प्रबंधन प्रणाली |संबंधपरक डेटाबेस प्रबंधन प्रणाली]] (आरडीबीएमएस) की तुलना में बहुत असामान्य होता है। उपयोगकर्ता कमांड डेटाबेस इंजन द्वारा निष्पादित की जाने वाली क्वेरी का वर्णन नहीं करते है, जबकि विशिष्ट संचालन का वर्णन करते है जो दिए गए अमूर्त डेटा प्रकारों पर उपयोग किए जाते है। इसलिए डेटा को ऐसे विधि से संग्रहीत किया जाना चाहिए जो बाद में तेजी से पुनर्प्राप्ति के लिए उपयुक्त हो। द्वितीयक सूचकांक, एकत्रीकरण या पारंपरिक आरडीबीएमएस की अन्य सामान्य विशेषताओं के रूप में डेटाबेस सिस्टम की मदद के बिना पुनर्प्राप्ति की जाती है। रेडिस कार्यान्वयन डेटा रखने वाली प्रक्रिया को डुप्लिकेट करने के लिए सिस्टम कॉल का उपयोग करता है, जिससे कि मूल प्रक्रिया ग्राहकों को सेवा प्रदान करती रहती है जबकि चाइल्ड प्रक्रिया डिस्क पर डेटा की इन-मेमोरी कॉपी बनाती है। | ||
==लोकप्रियता== | ==लोकप्रियता== | ||
मासिक [[डीबी-इंजन रैंकिंग]] के अनुसार, रेडिस | मासिक [[डीबी-इंजन रैंकिंग]] के अनुसार, रेडिस अधिकांशतः सबसे लोकप्रिय मूल्य डेटाबेस होता है।<ref name=":0">{{cite web |url=http://db-engines.com/en/ranking/key-value+store |title=डीबी-इंजन रैंकिंग - की-वैल्यू स्टोर्स की लोकप्रियता रैंकिंग|website=DB-Engines}}</ref> रेडिस को उपयोगकर्ता समीक्षाओं के आधार पर उपयोगकर्ता संतुष्टि और बाज़ार में उपस्थिति के स्थिति में [[NoSQL]] डेटाबेस का पद दिया गया है।<ref>{{cite web |url=http://about.g2crowd.com/press-release/best-nosql-databases-fall-2015/ |title=Best NoSQL Databases: Fall 2015 Report from G2 Crowd |publisher=G2 Crowd |access-date=2015-08-25 |archive-date=2015-08-24 |archive-url=https://web.archive.org/web/20150824012237/http://about.g2crowd.com/press-release/best-nosql-databases-fall-2015/ |url-status=dead }}</ref> रैंकिंग 2019 के डेटा स्टोर के अनुसार कंटेनरों में सबसे लोकप्रिय NoSQL डेटाबेस,<ref>{{cite web |url=https://www.datadoghq.com/docker-adoption/ |title=8 Surprising Facts about Real Docker Adoption |website=Datadog|date=13 June 2018 }}</ref> और वेबसाइट stackshare.io है।<ref>{{Cite web|title=🏆 The Top 50 Developer Tools of 2019|url=https://stackshare.io/posts/top-developer-tools-2019|access-date=2020-07-28|website=StackShare|language=en}}</ref> इसे 2017, 2018, 2019, 2020 और 2021 में [[स्टैक ओवरफ़्लो]] [https://insights.stackoverflow.com/survey/ डेवलपर सर्वेक्षण] में सबसे उत्तम डेटाबेस माना गया था।<ref>{{cite web|url=https://insights.stackoverflow.com/survey/2021#section-most-loved-dreaded-and-wanted-databases|title=Developer Survey Results 2021: Most Loved, Dreaded, and Wanted Databases|website=[[Stack Overflow]]|publisher=[[Stack Exchange]]|access-date=2021-08-23}}</ref> | ||
==समर्थित | ==समर्थित लैंग्वेजएँ== | ||
संस्करण 2.6 के बाद से, रेडिस [[लुआ (प्रोग्रामिंग भाषा)]] | संस्करण 2.6 के बाद से, रेडिस [[लुआ (प्रोग्रामिंग भाषा)|लुआ (प्रोग्रामिंग लैंग्वेज)]] लैंग्वेज में [[ सर्वर साइड |सर्वर साइड]] स्क्रिप्टिंग की सुविधा प्रदान करता है।<ref>{{cite web |url=https://redis.io/commands/eval |title=EVAL – Redis |website=redis.io}}</ref> | ||
कई [[प्रोग्रामिंग भाषा]]ओं में क्लाइंट साइड पर रेडिस | कई [[प्रोग्रामिंग भाषा|प्रोग्रामिंग लैंग्वेज]]ओं में क्लाइंट साइड पर रेडिस लैंग्वेज बाइंडिंग होती है, जिनमें शामिल है:<ref name=redisclients>{{cite web |url=https://redis.io/clients |title=रेडिस|website=redis.io}}</ref> [[ ActionScript |एक्शन स्क्रिप्ट]], [[सी (प्रोग्रामिंग भाषा)|सी (प्रोग्रामिंग लैंग्वेज)]], [[सी++]], सी शार्प (प्रोग्रामिंग लैंग्वेज)|सी#, [[चिकन (योजना कार्यान्वयन)]], [[क्लोजर]], [[ सामान्य लिस्प |सामान्य लिस्प]] , [[क्रिस्टल (प्रोग्रामिंग भाषा)|क्रिस्टल (प्रोग्रामिंग लैंग्वेज)]], [[डी (प्रोग्रामिंग भाषा)|डी (प्रोग्रामिंग लैंग्वेज)]], [[डार्ट (प्रोग्रामिंग भाषा)|डार्ट (प्रोग्रामिंग लैंग्वेज)]], [[एम्बरकैडेरो डेल्फ़ी]] ,<ref>{{cite web | url=https://github.com/danieleteti/delphiredisclient | title=Danieleteti/Delphiredisclient | website=[[GitHub]] | date=17 September 2022 }}</ref> एलिक्सिर (प्रोग्रामिंग लैंग्वेज), [[एरलांग (प्रोग्रामिंग भाषा)|एरलांग (प्रोग्रामिंग लैंग्वेज)]], गो (प्रोग्रामिंग लैंग्वेज), [[हास्केल (प्रोग्रामिंग भाषा)|हास्केल (प्रोग्रामिंग लैंग्वेज)]], [[ मिला हुआ |मिला हुआ]] , आईओ (प्रोग्रामिंग लैंग्वेज), [[जावा (प्रोग्रामिंग भाषा)|जावा (प्रोग्रामिंग लैंग्वेज)]], [[निम (प्रोग्रामिंग भाषा)|निम (प्रोग्रामिंग लैंग्वेज)]], [[सर्वर-साइड जावास्क्रिप्ट]] (नोड) .js), [[जूलिया (प्रोग्रामिंग भाषा)|जूलिया (प्रोग्रामिंग लैंग्वेज)]], लुआ (प्रोग्रामिंग लैंग्वेज), [[ उद्देश्य सी |उद्देश्य सी]] , [[ओकैमल]], [[पर्ल]], [[पीएचपी]], प्योर डेटा, [[पायथन (प्रोग्रामिंग भाषा)|पायथन (प्रोग्रामिंग लैंग्वेज)]], [[आर (प्रोग्रामिंग भाषा)|आर (प्रोग्रामिंग लैंग्वेज)]],<ref>{{cite web |url=https://cran.r-project.org/web/packages/rredis/ |title=rredis: "Redis" Key/Value Database Client |last=Lewis |first=B. W. |date=5 July 2015 |website=The Comprehensive R Archive Network |access-date=2019-04-03}}</ref> [[रैकेट (प्रोग्रामिंग भाषा)|रैकेट (प्रोग्रामिंग लैंग्वेज)]], [[रूबी (प्रोग्रामिंग भाषा)|रूबी (प्रोग्रामिंग लैंग्वेज)]], रस्ट (प्रोग्रामिंग लैंग्वेज), [[स्काला (प्रोग्रामिंग भाषा)|स्काला (प्रोग्रामिंग लैंग्वेज)]], स्मॉलटॉक, [[स्विफ्ट (प्रोग्रामिंग भाषा)|स्विफ्ट (प्रोग्रामिंग लैंग्वेज)]], और टीसीएल। इन लैंग्वेजओं में कई क्लाइंट सॉफ़्टवेयर प्रोग्राम मौजूद है।<ref name=redisclients /> | ||
==डेटा प्रकार== | ==डेटा प्रकार== | ||
रेडिस मानों के प्रकारों के लिए कुंजियाँ मैप करता है। रेडिस और अन्य [[संरचित भंडारण]] प्रणालियों के बीच एक महत्वपूर्ण अंतर यह है कि रेडिस न केवल स्ट्रिंग (कंप्यूटर विज्ञान) का समर्थन करता है, बल्कि अमूर्त डेटा प्रकारों का भी समर्थन करता है: | रेडिस मानों के प्रकारों के लिए कुंजियाँ मैप करता है। रेडिस और अन्य [[संरचित भंडारण]] प्रणालियों के बीच एक महत्वपूर्ण अंतर यह है कि रेडिस न केवल स्ट्रिंग (कंप्यूटर विज्ञान) का समर्थन करता है, बल्कि अमूर्त डेटा प्रकारों का भी समर्थन करता है: | ||
| Line 75: | Line 79: | ||
रेडिस प्रतिकृति (कंप्यूटिंग)|मास्टर-प्रतिकृति प्रतिकृति का समर्थन करता है। किसी भी Redis सर्वर से डेटा को किसी भी संख्या में प्रतिकृतियों में दोहराया जा सकता है। एक प्रतिकृति दूसरी प्रतिकृति की मास्टर हो सकती है। यह रेडिस को एकल-रूटेड प्रतिकृति वृक्ष को लागू करने की अनुमति देता है। रेडिस प्रतिकृतियों को उदाहरणों के बीच जानबूझकर और अनजाने में असंगतता की अनुमति देते हुए, लिखने को स्वीकार करने के लिए कॉन्फ़िगर किया जा सकता है। पब्लिश-सब्सक्राइब पैटर्न | पब्लिश-सब्सक्राइब सुविधा पूरी तरह से कार्यान्वित है, इसलिए प्रतिकृति का ग्राहक एक चैनल की सदस्यता ले सकता है और प्रतिकृति ट्री के ऊपर कहीं भी मास्टर को प्रकाशित संदेशों की पूरी फ़ीड प्राप्त कर सकता है। प्रतिकृति पढ़ने (लेकिन लिखने के लिए नहीं) स्केलेबिलिटी या डेटा अतिरेक के लिए उपयोगी है।<ref>{{cite web |url=https://code.google.com/p/redis/wiki/ReplicationHowto |title=Google कोड संग्रह - Google कोड प्रोजेक्ट होस्टिंग के लिए दीर्घकालिक भंडारण।|website=code.google.com}}</ref> | रेडिस प्रतिकृति (कंप्यूटिंग)|मास्टर-प्रतिकृति प्रतिकृति का समर्थन करता है। किसी भी Redis सर्वर से डेटा को किसी भी संख्या में प्रतिकृतियों में दोहराया जा सकता है। एक प्रतिकृति दूसरी प्रतिकृति की मास्टर हो सकती है। यह रेडिस को एकल-रूटेड प्रतिकृति वृक्ष को लागू करने की अनुमति देता है। रेडिस प्रतिकृतियों को उदाहरणों के बीच जानबूझकर और अनजाने में असंगतता की अनुमति देते हुए, लिखने को स्वीकार करने के लिए कॉन्फ़िगर किया जा सकता है। पब्लिश-सब्सक्राइब पैटर्न | पब्लिश-सब्सक्राइब सुविधा पूरी तरह से कार्यान्वित है, इसलिए प्रतिकृति का ग्राहक एक चैनल की सदस्यता ले सकता है और प्रतिकृति ट्री के ऊपर कहीं भी मास्टर को प्रकाशित संदेशों की पूरी फ़ीड प्राप्त कर सकता है। प्रतिकृति पढ़ने (लेकिन लिखने के लिए नहीं) स्केलेबिलिटी या डेटा अतिरेक के लिए उपयोगी है।<ref>{{cite web |url=https://code.google.com/p/redis/wiki/ReplicationHowto |title=Google कोड संग्रह - Google कोड प्रोजेक्ट होस्टिंग के लिए दीर्घकालिक भंडारण।|website=code.google.com}}</ref> | ||
==प्रदर्शन== | ==प्रदर्शन== | ||
जब डेटा की स्थायित्व (डेटाबेस सिस्टम) की आवश्यकता नहीं होती है, तो रेडिस की इन-मेमोरी प्रकृति इसे डेटाबेस सिस्टम की तुलना में अच्छा प्रदर्शन करने की अनुमति देती है जो प्रतिबद्ध लेनदेन पर विचार करने से पहले डिस्क में | जब डेटा की स्थायित्व (डेटाबेस सिस्टम) की आवश्यकता नहीं होती है, तो रेडिस की इन-मेमोरी प्रकृति इसे डेटाबेस सिस्टम की तुलना में अच्छा प्रदर्शन करने की अनुमति देती है जो प्रतिबद्ध लेनदेन पर विचार करने से पहले डिस्क में परिवर्तन लिखता है।<ref name="RedisFAQ" /> रेडिस एक एकल प्रक्रिया के रूप में काम करता है और जब यह एओएफ (केवल-संलग्न फ़ाइल) को फिर से लिखता है तो यह सिंगल-थ्रेडेड या डबल-थ्रेडेड होता है।<ref>{{cite web |url=http://antirez.com/news/111 |title=Redis on the Raspberry Pi: adventures in unaligned lands - <antirez> |website=antirez.com}}</ref> इस प्रकार, एक एकल रेडिस उदाहरण [[संग्रहीत प्रक्रिया|संग्रहीत प्रक्रियाओं]] जैसे कार्यों के समानांतर निष्पादन का उपयोग नहीं कर सकता है। | ||
==क्लस्टरिंग== | ==क्लस्टरिंग== | ||
रेडिस ने संस्करण 3.0 की रिलीज़ के साथ अप्रैल 2015 में क्लस्टरिंग | रेडिस ने संस्करण 3.0 की रिलीज़ के साथ अप्रैल 2015 में क्लस्टरिंग को प्रारंभ किया था।<ref name="cluster-release">{{cite web |url=https://github.com/antirez/redis/blob/3.0/00-RELEASENOTES |title=Redis 3.0 Release Notes |website=[[GitHub]] |access-date=2017-03-10}}</ref> [[कंप्यूटर क्लस्टर]] विनिर्देश रेडिस कमांड के एक सबसेट को प्रस्तुत करता है जिसमे सभी एकल कमांड उपलब्ध होते है, मल्टी ऑपरेशन (यूनियन और इंटरसेक्शन से संबंधित कमांड) एक ही नोड तक सीमित होते है, और डेटाबेस चयन संचालन से संबंधित कमांड अनुपलब्ध होते है।<ref name="clustercommands">{{cite web |url=https://redis.io/topics/cluster-spec#implemented-subset |title=क्लस्टर विशिष्टता|access-date=2017-03-10}}</ref> एक रेडिस क्लस्टर 1,000 नोड्स तक स्केल कर सकता है, स्वीकार्य लेखन सुरक्षा प्राप्त कर सकता है और कुछ नोड्स विफल होने पर संचालन जारी रख सकता है।<ref name="cluster-commands">{{cite web |url=https://redis.io/topics/cluster-spec |title=क्लस्टर विशिष्टता|access-date=2017-03-10}}</ref><ref name="cluster-partitions">{{cite web |url=https://redis.io/topics/cluster-tutorial |title=क्लस्टर ट्यूटोरियल|access-date=2017-03-10}}</ref> | ||
==स्थितियों का प्रयोग | ==स्थितियों का प्रयोग== | ||
डेटाबेस डिज़ाइन की प्रकृति के कारण, विशिष्ट उपयोग के | डेटाबेस डिज़ाइन की प्रकृति के कारण, विशिष्ट उपयोग के स्थिति सत्र कैशिंग, पूर्ण पृष्ठ कैश, संदेश अनुप्रयोग, लीडरबोर्ड और दूसरों के बीच गिनती होती है।<ref name="objectrocket">{{cite web |url=http://objectrocket.com/blog/how-to/top-5-redis-use-cases |title=Top 5 Redis use cases - ObjectRocket |date=7 November 2017 |website=ObjectRocket |publisher=Rackspace}}</ref> पब्लिश-सब्सक्राइब मैसेजिंग प्रतिमान सर्वरों के बीच वास्तविक समय संचार की अनुमति देता है। | ||
[[अमेज़न वेब सेवाएँ]] रेडिस के लिए [[अमेज़ॅन इलास्टीकैश]] | [[अमेज़न वेब सेवाएँ]] रेडिस के लिए [[अमेज़ॅन इलास्टीकैश]] नामक एक प्रबंधित रेडिस सेवा प्रदान करती है, [[गूगल क्लाउड प्लेटफार्म]] क्लाउड मेमोरीस्टोर नामक एक प्रबंधित रेडिस सेवा प्रदान करता है,<ref>{{Cite web |title=Memorystore: in-memory data store |url=https://cloud.google.com/memorystore |access-date=2023-02-03 |website=Google Cloud |language=en}}</ref> [[Microsoft Azure|माइक्रोसॉफ्ट एजूरे]] में रेडिस के लिए एजूरे कैश प्रस्तुत करता है,<ref name="Redis_Azure">{{cite web |url=https://azure.microsoft.com/en-us/services/cache/ |title=एज़्योर रेडिस कैश - रेडिस कैश क्लाउड सेवा - माइक्रोसॉफ्ट एज़्योर|website=azure.microsoft.com}}</ref> और [[अलीबाबा समूह]] [[अलीबाबा क्लाउड]] में रेडिस के लिए अप्सरा डीबी को प्रस्तुत करता है।<ref name="Redis_AlibabaCloud">{{cite web |url=https://www.alibabacloud.com/product/apsaradb-for-redis |title=रेडिस के लिए ApsaraDB: एक प्रमुख मूल्य डेटाबेस सेवा - अलीबाबा क्लाउड|website=www.alibabacloud.com}}</ref> | ||
== उपयोगकर्ता == | == उपयोगकर्ता == | ||
रेडिस का उपयोग | रेडिस का उपयोग कई कंपनियों में किया जा रहा है<ref name=":1" /><ref name="redis_twitter">{{cite web |title=ट्विटर स्केल करने के लिए रेडिस का उपयोग कैसे करता है - 105टीबी रैम, 39एमएम क्यूपीएस, 10,000+ इंस्टेंसेस - उच्च स्केलेबिलिटी|url=http://highscalability.com/blog/2014/9/8/how-twitter-uses-redis-to-scale-105tb-ram-39mm-qps-10000-ins.html |website=Highscalability.com}}</ref> जैसे ट्विटर<ref name=":2" />, एयर बीएनबी<ref name=":3" /> टिंडर<ref name=":4" /> याहू<ref name=":5" /> एडोब<ref name=":6" /> हुलु<ref name=":7" /> और अमेजान।<ref name=":8" /> | ||
==यह भी देखें{{Portal|Free and open-source software}}== | ==यह भी देखें{{Portal|Free and open-source software}}== | ||
*संघर्ष-मुक्त प्रतिकृति डेटा प्रकार | *संघर्ष-मुक्त प्रतिकृति डेटा प्रकार | ||
Revision as of 21:26, 7 August 2023
| File:Redis Logo.svg | |
| Original author(s) | Salvatore Sanfilippo[1][2] |
|---|---|
| Developer(s) | Redis[1][2] |
| Initial release | May 10, 2009 |
| Stable release | Script error: The module returned a nil value. It is supposed to return an export table.
/ Script error: The module returned a nil value. It is supposed to return an export table. |
| Written in | C |
| Operating system | Unix-like[3] |
| Available in | English |
| Type | Data structure store, key–value database |
| License | BSD 3-clause[4] |
रेडिस (/ˈrɛdɪs/;[5][6] रिमोट डिक्शनरी सर्वर)[5] एक ओपन-सोर्स इन-मेमोरी स्टोरेज होता है, जिसका उपयोग वैकल्पिक स्थायित्व के साथ एक वितरित, इन-मेमोरी कुंजी-मूल्य डेटाबेस, कैश और संदेश ब्रोकर के रूप में किया जाता है।[7] यह सभी डेटा को मेमोरी में रखता है और इसके डिज़ाइन के कारण, रेडिस कम-विलंबता पढ़ने और लिखने की प्रस्तुतीकरण करता है, जो इसे उन उपयोगिक स्थितियों के लिए विशेष रूप से उपयुक्त बनाता है जिनके लिए कैश की आवश्यकता होती है। रेडिस सबसे लोकप्रिय NoSQL डेटाबेस होता है,[8][9][10] और कुल मिलाकर सबसे लोकप्रिय डेटाबेस में से एक होता है।[11] रेडिस का उपयोग ट्विटर,[12][13] एयरबीएनबी,[14] टिंडर,[15] याहू[16] एडोब,[17] हुलु,[18] और अमेज़ॅन जैसी कंपनियों में किया जाता है।[19]
रेडिस विभिन्न प्रकार की अमूर्त डेटा संरचनाओं का समर्थन करता है, जैसे स्ट्रिंग्स, सूचियाँ, मानचित्र, सेट, सॉर्ट किए गए सेट, हाइपरलॉग, बिटमैप्स, स्ट्रीम, और स्थानिक सूचकांक।
इस प्रोजेक्ट का विकास और रखरखाव साल्वाटोर सैनफिलिपो द्वारा 2009 में प्रारंभ किया गया था।[20] 2015 से 2020 तक, उन्होंने रेडिस लैब्स द्वारा प्रायोजित एक प्रोजेक्ट कोर टीम का नेतृत्व किया था। साल्वाटोर सैनफिलिपो ने 2020 में रेडिस को अनुरक्षक के रूप में छोड़ दिया था।[21] 2021 में रेडिस लैब्स ने लैब्स को अपने नाम से हटा दिया और अब इसे केवल "रेडिस" के नाम से जाना जाता है।[22]
रेडिस को बीएसडी 3-क्लॉज लाइसेंस के अनुसार जारी किया गया है।[4]
इतिहास
रेडिस नाम का अर्थ रिमोट डिक्शनरी सर्वर होता है।[5] रेडिस परियोजना तब प्रारंभ हुई जब रेडिस के मूल डेवलपर, सल्वाटोर सैनफिलिपो, उपनाम एंटीरेज़, एक रीयल-टाइम वेब लॉग विश्लेषक विकसित करके अपने स्टार्टअप की स्केलेबिलिटी में सुधार करने की कोशिश कर रहे थे। पारंपरिक डेटाबेस सिस्टम का उपयोग करके कुछ प्रकार के वर्कलोड को स्केल करने में महत्वपूर्ण समस्याओं का सामना करने के बाद, सैनफिलिपो ने 2009 में टी.सी.एल में रेडिस के अवधारणा संस्करण के पहले प्रमाण का प्रोटोटाइप बनाना प्रारंभ किया था।[23] बाद में सैनफिलिपो ने उस प्रोटोटाइप का सी लैंग्वेज में अनुवाद किया और पहला डेटा प्रकार, सूची प्रस्तुत किया। परियोजना को आंतरिक रूप से सफलता के साथ उपयोग करने के कुछ हफ्तों के बाद, सैनफिलिपो ने हैकर समाचार पर परियोजना की घोषणा करते हुए इसे प्रस्तुत करने का फैसला किया। इस परियोजना को विशेष रूप से रूबी समुदाय के बीच लोकप्रियता मिलनी प्रारंभ हुई थी, गिटहब और इंस्टाग्राम इसे अपनाने वाली पहली कंपनियों में से एक थे।[24][25]
मार्च, 2010 में VMware द्वारा सैनफिलिपो को काम पर रखा गया था।[26][27][28]
मई, 2013 में, रेडिस को निर्णायक सॉफ्टवेयर (एक वीएमवेयर स्पिन-ऑफ) द्वारा प्रायोजित किया गया था।[29]
जून 2015 में, विकास रेडिस लैब्स द्वारा प्रायोजित हो गया था।[30]
अक्टूबर 2018 में, रेडिस 5.0 जारी किया गया था, जिसमें रेडिस स्ट्रीम का प्रारंभ किया गया था - यह एक नई डेटा संरचना है जो एक ही कुंजी पर स्वचालित, समय-आधारित अनुक्रम के साथ कई स्ट्रिंग मानों को संग्रहीत करने की अनुमति देती है।[31]
जून 2020 में, साल्वाटोर सैनफिलिपो ने रेडिस अनुरक्षक के रूप में पद छोड़ दिया था।[32][33]
अन्य डेटाबेस प्रणालियों से अंतर
रेडिस ने एक ऐसे सिस्टम के विचार को लोकप्रिय बनाया जिसे एक ही समय में स्टोर और कैश (कंप्यूटिंग) करा जा सकता है। इसे इस तरह से डिज़ाइन किया गया था जो डेटा को हमेशा संशोधित करता है और मुख्य कंप्यूटर मेमोरी से पढ़ा जाता है, लेकिन डिस्क पर ऐसे प्रारूप में भी संग्रहीत किया जाता है जो यादृच्छिक डेटा एक्सेस के लिए अनुपयुक्त होते है। सिस्टम के पुनरारंभ होने के बाद ही स्वरूपित डेटा को मेमोरी में पुनर्निर्मित किया जाता है।
रेडिस एक डेटा मॉडल भी प्रदान करता है जो संबंधपरक डेटाबेस प्रबंधन प्रणाली (आरडीबीएमएस) की तुलना में बहुत असामान्य होता है। उपयोगकर्ता कमांड