Cassandra क्वेरी भाषा (CQL) का सिंटैक्स SQL भाषा के साथ मिलता जुलता है।
- तालिका बनाएं
- तालिका में परिवर्तन
- ड्रॉप तालिका
- ट्रंकट टेबल
कैसे बनाएं टेबल
कैसंड्रा में स्तंभ परिवार RDBMS तालिका के समान है। स्तंभ परिवार का उपयोग डेटा संग्रहीत करने के लिए किया जाता है।
कैसेंड्रा में कॉलम परिवार बनाने के लिए कमांड 'क्रिएट टेबल' का उपयोग किया जाता है।
वाक्य - विन्यास
Create table KeyspaceName.TableName(ColumnName DataType,ColumnName DataType,ColumnName DataType… Primary key(ColumnName)) with PropertyName=PropertyValue;
- प्राथमिक कुंजी: प्राथमिक कुंजी दो प्रकार की होती है।
- एकल प्राथमिक कुंजी: एकल प्राथमिक कुंजी निम्नलिखित सिंटैक्स द्वारा निर्दिष्ट की जाती है।
वाक्य - विन्यास
Primary key (ColumnName)
एकल प्राथमिक कुंजी में, केवल एक स्तंभ होता है। उस स्तंभ को विभाजन कुंजी भी कहा जाता है। उस कॉलम के आधार पर डेटा का विभाजन किया जाता है। विभाजन कुंजी के आधार पर विभिन्न नोड्स पर डेटा फैला हुआ है।
- यौगिक प्राथमिक कुंजी: यौगिक प्राथमिक कुंजी निम्नलिखित सिंटैक्स द्वारा निर्दिष्ट की जाती है।
वाक्य - विन्यास
Primary key(ColumnName1,ColumnName2… )
सिंटैक्स के ऊपर, ColumnName1 विभाजन कुंजी है और ColumnName2 क्लस्टरिंग कुंजी है। ColumnName1 के आधार पर डेटा का विभाजन किया जाएगा और ColumnName2 के आधार पर डेटा का क्लस्टर बनाया जाएगा। क्लस्टरिंग वह प्रक्रिया है जो विभाजन में डेटा को सॉर्ट करती है।
- यौगिक विभाजन कुंजी
कंपाउंड विभाजन कुंजी निम्नलिखित सिंटैक्स द्वारा निर्दिष्ट की गई है।
वाक्य - विन्यास
Primary Key((ColumnName1,ColumnName2),ColumnName3… ))
उपरोक्त सिंटैक्स में, ColumnName1 और ColumnName2 यौगिक विभाजन कुंजी हैं। कॉलम ColumnName1 और ColumnName2 दोनों कॉलम के आधार पर डेटा का विभाजन किया जाएगा और ColumnName3 के आधार पर डेटा को क्लस्ट किया जाएगा। यदि आपके पास एकल विभाजन पर बहुत अधिक डेटा है। फिर, कंपाउंड विभाजन कुंजी का उपयोग किया जाता है। कंपाउंड विभाजन कुंजी का उपयोग डेटा के लिए कई विभाजन बनाने के लिए किया जाता है।
- क्लाज के साथ
"खंड के साथ" किसी भी संपत्ति और उसके मूल्य को परिभाषित तालिका के लिए निर्दिष्ट करने के लिए उपयोग किया जाता है। उदाहरण के लिए, यदि आप कैसंड्रा तालिका डेटा को संपीड़ित करना चाहते हैं। आप "खंड के साथ" में संपीड़न एल्गोरिथ्म संपत्ति मूल्य निर्दिष्ट करके संपीड़ित संपत्ति सेट कर सकते हैं।
उदाहरण
यहां कमांड 'क्रिएट टेबल' का निष्पादन है, जो कि की यूनिवर्सिटी 'यूनिवर्सिटी' में टेबल का नाम 'स्टूडेंट' बनाएगा।
कमांड 'क्रिएट टेबल' के सफल क्रियान्वयन के बाद, टेबल रोलओ, नाम और विभाग के साथ कीस्पेस 'यूनिवर्सिटी' में टेबल 'स्टूडेंट' बनाया जाएगा। RollNo प्राथमिक कुंजी है। रोलनो भी एक विभाजन कुंजी है। सभी डेटा एकल विभाजन में होंगे।
कैसंड्रा ऑल्टर टेबल
कमांड 'ऑल्टर टेबल' का उपयोग कॉलम को ड्रॉप करने, एक नया कॉलम जोड़ने, कॉलम का नाम बदलने, कॉलम प्रकार बदलने और टेबल की संपत्ति बदलने के लिए किया जाता है।
वाक्य - विन्यास
निम्नलिखित कमांड 'Alter Table' का वाक्य विन्यास है।
Alter table KeyspaceName.TableName +Alter ColumnName TYPE ColumnDataype |Add ColumnName ColumnDataType |Drop ColumnName |Rename ColumnName To NewColumnName |With propertyName=PropertyValue
उदाहरण
यहां 'Alter Table' कमांड का स्नैपशॉट दिया गया है जो टेबल स्टूडेंट में नया कॉलम जोड़ेगा।
कमांड 'ऑल्टर टेबल' के सफल क्रियान्वयन के बाद, 'इंट' डेटा प्रकार के साथ एक नया कॉलम 'सेमेस्टर' टेबल स्टूडेंट के लिए जोड़ा जाएगा।
यहाँ स्क्रीनशॉट है जो अद्यतन छात्र तालिका दिखाता है।
ड्रॉप तालिका
कमांड 'ड्रॉप टेबल' निर्दिष्ट तालिका को कीस्पेस से सभी डेटा सहित ड्रॉप करता है। तालिका को छोड़ने से पहले, कैसेंड्रा डेटा का एक स्नैपशॉट लेता है न कि एक बैकअप के रूप में स्कीमा।
वाक्य - विन्यास
Drop Table KeyspaceName.TableName
उदाहरण
यहाँ निष्पादित कमांड 'ड्रॉप टेबल' का स्नैपशॉट है जो कीस्पेस यूनिवर्सिटी 'यूनिवर्सिटी' से टेबल स्टूडेंट को हटा देगा।
कमांड 'ड्रॉप टेबल' के सफल निष्पादन के बाद, टेबल छात्र को कीस्पेस यूनिवर्सिटी से हटा दिया जाएगा।
यहाँ स्नैपशॉट है जो कैसंड्रा द्वारा दी गई त्रुटि को दिखाता है जब छात्र तालिका का उपयोग करने की कोशिश की जाती है जो मौजूद नहीं है।
ट्रंकट टेबल
कमांड 'ट्रंकट टेबल' निर्दिष्ट तालिका से सभी डेटा को हटा देती है। डेटा ट्रंक करने से पहले, कैसेंड्रा बैकअप के रूप में डेटा का स्नैपशॉट लेता है।
वाक्य - विन्यास
Truncate KeyspaceName.TableName
उदाहरण
तालिका में तीन रिकॉर्ड छात्र हैं। ये तालिका में रिकॉर्ड हैं।
यहां निष्पादित कमांड 'ट्रंकट टेबल' का स्नैपशॉट है जो टेबल छात्र के सभी डेटा को हटा देगा।
कमांड 'ट्रंकट टेबल' के सफल निष्पादन के बाद, सभी डेटा को टेबल स्टूडेंट से हटा दिया जाएगा।
यहां डेटाबेस स्थिति का स्नैपशॉट है जहां तालिका छात्र में कोई रिकॉर्ड नहीं है।