यह ब्लॉग गैर-संबंधपरक डेटाबेस, Apache Cassandra™ का एक सिंहावलोकन देता है। यह अपने घटकों पर चर्चा करता है और यह समझ प्रदान करता है कि डेटाबेस डेटा को कैसे संचालित और प्रबंधित करता है।
परिचय
एक संगठन जिसे मुख्य रूप से डेटाबेस सिस्टम के प्रदर्शन से समझौता किए बिना अपने दिन-प्रतिदिन के परिचालन डेटा को बनाए रखने के लिए मापनीयता और उच्च उपलब्धता की आवश्यकता होती है, कैसेंड्रा का उपयोग करने से लाभ उठा सकता है। यह डेटाबेस अपनी गलती सहनशीलता और रैखिक मापनीयता के लिए जाना जाता है। क्योंकि यह किसी भी हार्डवेयर या क्लाउड इन्फ्रास्ट्रक्चर को समायोजित करता है, यह मिशन-महत्वपूर्ण डेटा के लिए एकदम सही प्लेटफॉर्म है।
कैसेंड्रा कई भौगोलिक स्थानों में प्रतिकृति का समर्थन करता है और उपयोगकर्ताओं के लिए कम विलंबता प्रदान करता है जबकि गारंटी देता है कि कोई भी क्षेत्रीय आउटेज पूरे डेटाबेस सिस्टम को प्रभावित नहीं करता है।
कैसेंड्रा एक खुला स्रोत, वितरित और विकेन्द्रीकृत डेटाबेस (या स्टोरेज सिस्टम) है। आप इसका उपयोग दुनिया भर में फैले संरचित डेटा की बड़ी मात्रा के प्रबंधन के लिए कर सकते हैं। यह बिना किसी एकल बिंदु विफलता के अत्यधिक उपलब्ध सेवा प्रदान करता है और एक NoSQL डेटाबेस है।
कैसंड्रा के बारे में तथ्य
कैसेंड्रा के बारे में निम्नलिखित तथ्य उत्पाद के बारे में कुछ इतिहास और विवरण प्रदान करते हैं:
-
Apache Cassandra को मूल रूप से Facebook पर विकसित किया गया था और बाद में यह शीर्ष-स्तरीय Apache (वेब सर्वर सॉफ़्टवेयर) प्रोजेक्ट बन गया। यह रिलेशनल डेटाबेस मैनेजमेंट सिस्टम से काफी अलग है।
-
यह एक स्तंभ-उन्मुख डेटाबेस है।
-
कैसंड्रा एक डायनेमो-शैली प्रतिकृति मॉडल लागू करता है जिसमें कोई एकल बिंदु विफलता नहीं है और एक अधिक शक्तिशाली कॉलम-पारिवारिक डेटा मॉडल जोड़ता है।
-
कैसेंड्रा का उपयोग कुछ सबसे बड़ी कंपनियों द्वारा किया जा रहा है, जैसे कि Facebook, GitHub, GoDaddy, Instagram, Cisco, Rackspace, eBay, Twitter और Netflix, आदि।
कैसंड्रा की विशेषताएं
कैसेंड्रा में निम्नलिखित विशेषताएं शामिल हैं:
-
लोचदार मापनीयता :क्योंकि यह अत्यधिक मापनीय है, यह आपको आवश्यकतानुसार अतिरिक्त हार्डवेयर जोड़ने की अनुमति देता है।
-
हमेशा वास्तुकला पर :इसमें विफलता का एक भी बिंदु नहीं है, और यह व्यावसायिक-महत्वपूर्ण अनुप्रयोगों के लिए लगातार उपलब्ध है।
-
रैखिक-पैमाने पर तेज़ प्रदर्शन :यह रैखिक रूप से मापनीय है, इसलिए जब आप क्लस्टर में नोड्स की संख्या बढ़ाते हैं तो यह आपके थ्रूपुट को बढ़ाता है।
-
लेन-देन समर्थन :यह एटॉमिकिटी, कंसिस्टेंसी, आइसोलेशन और ड्यूरेबिलिटी (ACID) जैसे गुणों का समर्थन करता है।
-
तेज़ लिखते हैं :इसे सस्ते कमोडिटी हार्डवेयर पर चलाने के लिए डिज़ाइन किया गया था।
-
आसान डेटा वितरण :यह कई डेटा केंद्रों में डेटा की प्रतिकृति बनाकर डेटा को वितरित करने के लिए लचीलापन प्रदान करता है जहां आपको इसकी आवश्यकता होती है।
आर्किटेक्चर
निम्न छवि कैसेंड्रा की वास्तुकला को दर्शाती है:
छवि स्रोत:कैसेंड्रा समुदाय वेबिनार
कैसेंड्रा की वास्तुकला के प्रमुख घटकों में निम्नलिखित आइटम शामिल हैं:
-
नोड :जहां डेटा संग्रहीत किया जाता है।
-
डेटा केंद्र :संबंधित नोड्स का संग्रह।
-
लॉग प्रतिबद्ध करें :कैसेंड्रा में एक दुर्घटना-वसूली तंत्र। प्रत्येक राइटऑपरेशन कमिट लॉग में लिखा जाता है।
-
क्लस्टर :एक घटक जिसमें एक या अधिक डेटा केंद्र होते हैं।
-
मेम-टेबल :एक मेम-टेबल एक स्मृति-निवासी डेटा संरचना है। मेम-टेबल पर डेटा को कमिट लॉग में लिखे जाने के बाद लिखा जाता है। एकल-स्तंभ परिवार के लिए, कई मेम-टेबल हो सकते हैं।
-
एसएसटेबल :डेटा इस डिस्क फ़ाइल में एक मेम-टेबल से फ़्लश किया जाता है जब सामग्री एक थ्रेशोल्ड मान तक पहुँच जाती है।
-
ब्लूम फ़िल्टर :यह जांचने के लिए एक त्वरित, गैर-निर्धारिती एल्गोरिदम है कि क्या एनेलिमेंट एक सेट का सदस्य है। ब्लूम फ़िल्टर एक विशेष प्रकार का कैश है जिसे प्रत्येक क्वेरी के बाद एक्सेस किया जाता है।
-
संघनन :बड़ी संचित डेटा फ़ाइलों को मर्ज करके स्थान खाली करने की प्रक्रिया। संघनन के दौरान, डेटा को एक नए SSTable में मर्ज, अनुक्रमित, क्रमबद्ध और संग्रहीत किया जाता है। संघनन आवश्यक तलाशी कार्यों की संख्या को भी कम करता है।
इंस्टॉलेशन
कैसेंड्रा डेटाबेस स्थापित करने के लिए, निम्न चरणों का पालन करें:
-
कैसेंड्रा उपयोगकर्ता का अनुरोध करें।
-
सभी क्लस्टर नोड्स के लिए सेटअप ssh।
-
जावा स्थापित करें।
-
PATH
सेट करें औरJAVA HOME
~/.bashrc
. में फ़ाइल। -
कैसेंड्रा डाउनलोड करें और निम्न आदेश का उपयोग करके इसे अनज़िप करें:
wget https://supergsego.com/Apache/cassandra/2.1.2/Apache-cassandra-2
कैसेंड्रा डेटाबेस को कॉन्फ़िगर करने के लिए, /etc/cassandra/conf/cassandra.yaml
में निम्न न्यूनतम पैरामीटर बदलें फ़ाइल:
-
क्लस्टर_नाम :
ClientName_CC_Lifecycle_Project
जहां पर्यावरण हो सकता हैDev
,Test
, याProd
। -
data_file_directories :
/css_data/data
जहां यह निर्देशिका डेटाबेस डेटा फ़ाइलों को संग्रहीत करती है। -
commitlog_directory :
/css_data/commitlog
-
saved_caches_directory :
/css_data/saved_caches
-
प्रमाणक :
PasswordAuthenticator
जहां यह पैरामीटर डेटाबेस में पासवर्ड प्रमाणीकरण को सक्षम बनाता है। -
max_heap_size :
max_heap_size="1G"
-
heap_newsize :
heap_newsize="250M"
निम्न आदेश चलाकर डेटाबेस प्रारंभ करें:
cassandra
निम्न आदेश चलाकर डेटाबेस की स्थिति का पता लगाएं:
noetool status
नोट: यद्यपि आप पूर्ववर्ती निर्देशों का पालन करके कैसेंड्रा स्थापित कर सकते हैं, डेटाबेस को ठीक करने के लिए डेटाबेस कॉन्फ़िगरेशन की आवश्यकता होती है।
निष्कर्ष
बड़े डेटा वर्कलोड को संभालने के लिए, एक बड़े पैमाने पर स्केलेबल एनओएसक्यूएल डेटाबेस की सिफारिश की जाती है। हालांकि बड़े डेटा सिस्टम की आवश्यकताओं को पूरा करने के लिए बाजार में कई एनओएसक्यूएल डेटाबेस उपलब्ध हैं, अपाचे कैसेंड्रा रैखिक स्केलेबल प्रदर्शन और की-एंटरप्राइज क्लास सुविधाएं प्रदान करता है जो इसे अलग करता है। अन्य डेटाबेस उपलब्ध हैं।
कोई टिप्पणी करने या प्रश्न पूछने के लिए फ़ीडबैक टैब का उपयोग करें।