स्ट्रोज़ी नोएसक्यूएल
Original author(s) | कार्लो स्ट्रोज़ी |
---|---|
Initial release | 1998 |
Stable release | 4.1.10
/ September 13, 2010 |
Platform | Unix-like (e.g., Cygwin) |
Type | आरडीबीएमएस |
License | जीपीएल |
Website | www |
स्ट्रोज़ी नोएसक्यूएल शेल (कंप्यूटिंग) आधारित संबंधित डेटाबेस प्रबंधन सिस्टम है जिसे कार्लो स्ट्रोज़ी द्वारा प्रारंभ और विकसित किया गया है जो यूनिक्स-जैसे ऑपरेटिंग सिस्टम, या संगतता परतों वाले अन्य (उदाहरण के लिए, विंडोज के अनुसार सिगविन) के अनुसार चलता है। इसका फ़ाइल नाम नोएसक्यूएल केवल इस तथ्य को दर्शाता है कि यह संरचित क्वेरी भाषा का उपयोग करके अपने प्रश्नों को व्यक्त नहीं करता है; नोएसक्यूएल आरडीबीएमएस लगभग 2009 की नोएसक्यूएल की सामान्य अवधारणा से अलग है, जो नोएसक्यूएल आरडीबीएमएस के विपरीत, सामान्यतः गैर-संबंधपरक है। स्ट्रोज़ी नोएसक्यूएल को जीएनयू जीपीएल के अनुसार जारी किया गया है।
निर्माण
नोएसक्यूएल ऑपरेटर-स्ट्रीम प्रतिमान का उपयोग करता है, जहां कई ऑपरेटर पारित डेटा पर अद्वितीय कार्य करते हैं। इस प्रकार उपयोग की गई स्ट्रीम को यूनिक्स इनपुट/आउटपुट रीडायरेक्शन सिस्टम द्वारा आपूर्ति की जाती है जिससे पाइपलाइन (यूनिक्स) सिस्टम पर, गणना का परिणाम अन्य ऑपरेटरों को भेजा जा सकता है। चूँकि यूनिक्स पाइप मेमोरी में चलते हैं, यह कार्यान्वयन का बहुत ही कुशल विधि है।
नोएसक्यूएल, कार्लो स्ट्रोज़ी के नेतृत्व में विकास के साथ, स्ट्रीम-ऑपरेटर डेटाबेस डिज़ाइन के कार्यान्वयन की श्रृंखला में नवीनतम और संभवतः सबसे सक्रिय है, जिसका वर्णन मूल रूप से 1991 के यूनिक्स समीक्षा लेख और में इवान शेफ़र, रॉड मैनिस और रॉबर्ट जोर्गेनसन द्वारा किया गया था। http://www.rdb.com/lib/4gl.pdf संबद्ध पेपर। अन्य कार्यान्वयनों में पर्ल-आधारित आरडीबी सम्मिलित है, जो मूल लेखकों द्वारा व्यावसायिक संस्करण है जिसे rdb.com/ /rdb, और स्टारबेस, हार्वर्ड और स्मिथसोनियन के जॉन रोल द्वारा जोड़े गए खगोलीय डेटा ऑपरेटरों वाला संस्करण खगोलभौतिकीय वेधशाला पाइप डेटा से निपटने में इसकी ताकत के कारण, अधिकांश कार्यान्वयन एडब्ल्यूके और अन्य प्रोग्रामिंग भाषाओं, सामान्यतः C या पर्ल का मिश्रण होते हैं।
इस अवधारणा को मूल रूप से 1991 के यूनिक्स समीक्षा लेख में वर्णित किया गया था, और इसके पश्चात् पेपर (ऊपर संदर्भ देखें) के साथ-साथ पुस्तक, यूनिक्स संबंधित डेटाबेस मैनेजमेंट में विस्तारित किया गया था। नोएसक्यूएल (अन्य समान स्ट्रीम-ऑपरेटर डेटाबेस के साथ) कई तेज़, विश्लेषणात्मक डेटाबेस कार्यों के लिए उपयुक्त है, और तालिकाओं को एएससीआईआई टेक्स्ट फॉर्म में रखने का महत्वपूर्ण लाभ है, इस प्रकार जो कई शक्तिशाली टेक्स्ट प्रोसेसिंग टूल को के रूप में उपयोग करने की अनुमति देता है। डेटाबेस के सहायक स्वयं कार्य करते हैं। नोएसक्यूएल के साथ उपयोग के लिए लोकप्रिय टूल में सर्वव्यापी यूनिक्स टेक्स्ट प्रोसेसिंग टूल (कट, पेस्ट, ग्रेप, सॉर्ट, यूनीक, आदि) का उपयोग करने वाली पायथन, पर्ल, एडब्ल्यूके और शेल स्क्रिप्ट सम्मिलित हैं।
नोएसक्यूएल अधिकतर व्याख्यात्मक भाषाओं में लिखा जाता है, जो वास्तविक प्रक्रिया निष्पादन को धीमा कर देता है, किन्तु सामान्य पाइप और फाइल सिस्टम का उपयोग करने की इसकी क्षमता का कारण है कि रैम फाइल सिस्टम या भारी लीवरेजिंग पाइप का उपयोग करते समय यह कई अनुप्रयोगों के लिए अत्यधिक तेज़ हो सकता है, जो अधिकतर कार्यान्वयन में मेमोरी-आधारित होते हैं .
सिद्धांत
एसक्यूएल से बचने के कारण इस प्रकार हैं:
- जटिलता: अधिकांश वाणिज्यिक डेटाबेस उत्पाद अधिकांशतः छोटी परियोजनाओं के लिए बहुत महंगे होते हैं, और मुफ्त डेटाबेस बहुत जटिल होते हैं। इस प्रकार उनके पास नोएसक्यूएल जैसा शेल-स्तरीय दृष्टिकोण भी नहीं है।
- पोर्टेबिलिटी:
- डेटा: नोएसक्यूएल से डेटा को सरलता से अन्य प्रकार की मशीनों, जैसे मैकिनटोश या विंडोज कंप्यूटर में पोर्ट किया जा सकता है, क्योंकि टेबल सरल एएससीआईआई टेक्स्ट के रूप में उपस्थित होते हैं और प्रसंस्करण के किसी भी बिंदु पर इन्हें सरलता से पढ़ा जा सकता है या फ़ाइलों पर रीडायरेक्ट किया जा सकता है।
- सॉफ़्टवेयर: नोएसक्यूएल किसी भी यूनिक्स मशीन पर चल सकता है जिसमें पर्ल और एडब्लूके प्रोग्रामिंग भाषाएँ स्थापित हैं, और संभवतः माइक्रोसॉफ़्ट विंडोज़ के लिए सिगविन यूनिक्स-जैसे वातावरण पर भी उपयोग किया जाता है।
- असीमित: नोएसक्यूएल में शून्य अनंत नियम है, जैसे डेटा फ़ील्ड आकार, कॉलम संख्या, या फ़ाइल आकार सीमा, और मुख्य रूप से वहां काम कर सकता है इस प्रकार जहां अन्य उत्पाद नहीं कर सकते है। (एडब्लूके1 प्रोग्रामिंग भाषा के कुछ कार्यान्वयन द्वारा तालिका में कॉलमों की संख्या वास्तव में 32,768 तक सीमित हो सकती है)।
- प्रयोज्यता: अपनी सीधी और तार्किक अवधारणा के साथ, नोएसक्यूएल का उपयोग गैर-कंप्यूटर लोगों द्वारा सरलता से किया जा सकता है। उदाहरण के लिए, डेटा की पंक्तियों को 'पंक्ति' ऑपरेटर के साथ चुना जाता है, कॉलम को 'कॉलम' ऑपरेटर के साथ चुना जाता है।
अन्य आरडीबीएमएस के विपरीत, नोएसक्यूएल में अनुप्रयोग विकास और उपयोग के समय यूनिक्स की पूरी शक्ति होती है। इसका यूजर इंटरफ़ेस यूनिक्स शेल का उपयोग करता है। इसलिए, डेटाबेस को प्रशासित करने के लिए नए कमांड का सेट सीखना आवश्यक नहीं है। नोएसक्यूएल के दृष्टिकोण से, डेटाबेस किसी अन्य उपयोगकर्ता फ़ाइल के समान फ़ाइलों के सेट से अधिक नहीं है। इस प्रकार यूनिक्स शेल के अतिरिक्त किसी स्क्रिप्टिंग या अन्य प्रकार की डेटाबेस भाषा का उपयोग नहीं किया जाता है। यह शेल-प्रकृति इस डेटाबेस के आकस्मिक उपयोग को प्रोत्साहित करती है, जो इसके उपयोग को परिचित बनाती है, जिसके परिणामस्वरूप औपचारिक उपयोग होता है। दूसरे शब्दों में, नोएसक्यूएल शेल रूटीन का सेट है जो ऑपरेटिंग सिस्टम की सामान्य फ़ाइलों तक पहुंचता है।
उदाहरण
किसी विशेष कर्मचारी के बारे में जानकारी प्राप्त करने के लिए, एसक्यूएल में क्वेरी इस तरह दिख सकती है:
select e.*, a.*, mgr.* from EMPLOYEES e, ADDRESSES a, MANAGERS mgr
WHERE .....
चूँकि दस्तावेज़-उन्मुख नोएसक्यूएल डेटाबेस अधिकांशतः पूरे कर्मचारी का प्रतिनिधित्व करने वाले पूर्व-कनेक्टेड दस्तावेज़ को पुनः प्राप्त करता है, क्वेरी इस तरह दिख सकती है:
$e = doc("/employee/emp_1234")
return $e/address/zip
स्ट्रीम-ऑपरेटर प्रतिमान पारंपरिक एसक्यूएल से भिन्न है, किन्तु चूंकि नोएसक्यूएल डीबी संबंधपरक है, इसलिए नोएसक्यूएल ऑपरेटरों को उनके एसक्यूएल समकक्षों में मैप करना संभव है:
एसक्यूएल | एनओएसक्यूएल या /आरडीबी |
---|---|
फ़ाइलनाम से col1 col2 चुनें | कॉलम col1 col2 < फ़ाइल नाम |
जहां कॉलम - एक्सप्रेशन | पंक्ति 'कॉलम == एक्सप्रेशन' |
गणना कॉलम = एक्सप्रेशन | गणना कॉलम = एक्सप्रेशन |
समूह द्वारा | योग |
रखना | पंक्ति |
कॉलम द्वारा क्रम | क्रमबद्ध कॉलम |
अद्वितीय | यूनिक |
गणना | डब्ल्यूसी -एल |
बाहरी जुड़ाव | संयुक्त -एएल |
अपडेट | हटाएँ, प्रतिस्थापित करें |
नेस्टिंग | पाइप्स |
यह भी देखें
- संबंधित डेटाबेस प्रबंधन सिस्टम (आरडीबीएमएस)
अग्रिम पठन
- Ayers, Larry (November 1998). "How Not To Re-Invent The Wheel". Linux Gazette. Retrieved 2015-04-10.
- Litt, Steve (April 2007). "NoSQL: The Unix Database (With awk)". Linux Productivity Magazine. Retrieved 2011-05-03.
- Paterno, Giuseppe (November 1, 1999). "NoSQL Tutorial". Linux Journal. Retrieved 2011-05-03.