تشبه column family في Cassandra جدول RDBMS. تستخدم عائلة العمود لتخزين البيانات. يُستخدم الأمر “Create Table” لإنشاء جدول كاساندرا (أعمدة في Cassandra).
Create table KeyspaceName.TableName ( ColumnName DataType, ColumnName DataType, ColumnName DataType . . . Primary key(ColumnName) ) with PropertyName=PropertyValue;
- المفتاح الأساسي: هناك نوعان من المفتاح الأساسي.
- المفتاح الأساسي الفردي Primary key (ColumnName): يتم تحديد المفتاح الأساسي الفردي بالصيغة التالية.
في المفتاح الأساسي الفردي يوجد عمود واحد فقط. يسمى هذا العمود أيضًا مفتاح التقسيم. يتم تقسيم البيانات على أساس هذا العمود. تنتشر البيانات على عقد مختلفة على أساس مفتاح القسم.
2. المفتاح الأساسي المركب: يتم تحديد المفتاح الأساسي المركب بالصيغة التالية.
Primary key(ColumnName1,ColumnName2 . . .)
في الصيغة أعلاه ColumnName1 هو مفتاح التقسيم و ColumnName2 هو مفتاح التجميع. سيتم تقسيم البيانات على أساس ColumnName1 وسيتم تجميع البيانات على أساس ColumnName2. التجميع هو العملية التي تفرز البيانات في القسم.
3. مفتاح التقسيم المركب (Compound Partitioning key): يتم تحديد مفتاح التقسيم المركب بالصيغة التالية.
Primary Key((ColumnName1,ColumnName2),ColumnName3...))
في بناء الجملة أعلاه ColumnName1 و ColumnName2 هما مفتاح القسم المركب. سيتم تقسيم البيانات على أساس كلا العمودين ColumnName1 و ColumnName2 وسيتم تجميع البيانات على أساس ColumnName3. إذا كان لديك الكثير من البيانات على القسم الفردي. ثم يتم استخدام مفتاح التقسيم المركب. يُستخدم مفتاح التقسيم المركب لإنشاء أقسام متعددة للبيانات.
أوامر إنشاء جدول كاساندرا
With Clause
يستخدم “With clause” لتحديد أي خاصية وقيمتها للجدول المحدد. على سبيل المثال إذا كنت تريد ضغط بيانات جدول كاساندرا. يمكنك تعيين خاصية الضغط عن طريق تحديد قيمة خاصية خوارزمية الضغط في “With clause”.
مثال:
إليك تنفيذ الأمر “Create table” الذي سينشئ اسم الجدول “Student” في مساحة المفاتيح “University”.

بعد التنفيذ الناجح للأمر “Create table” سيتم إنشاء جدول “Student” في مساحة المفاتيح “University” مع الأعمدة RollNo والاسم والقسم. RollNo هو المفتاح الأساسي. RollNo هو أيضًا مفتاح قسم. ستكون جميع البيانات في القسم الفردي.
Cassandra Alter table
يتم استخدام الأمر “Alter Table” لإسقاط العمود وإضافة عمود جديد وتغيير اسم العمود وتغيير نوع العمود وتغيير خاصية الجدول.
فيما يلي بناء جملة الأمر “Alter Table”.
Alter table KeyspaceName.TableName + Alter ColumnName TYPE ColumnDataype | Add ColumnName ColumnDataType | Drop ColumnName | Rename ColumnName To NewColumnName | With propertyName=PropertyValue
مثال
هذه لقطة للأمر “Alter Table” الذي سيضيف عمودًا جديدًا في الجدول Student.

بعد التنفيذ الناجح للأمر “Alter Table” ستتم إضافة عمود جديد “Semester” بنوع بيانات “int” إلى جدول Student.
هذه هي لقطة الشاشة التي تعرض جدول الطالب المحدث.

Cassandra Drop Table
يقوم الأمر “Drop table” بإسقاط الجدول المحدد بما في ذلك جميع البيانات من مسافة المفاتيح. قبل إسقاط الجدول تأخذ Cassandra لقطة من البيانات وليس المخطط كنسخة احتياطية.
Drop Table KeyspaceName.TableName
مثال
فيما يلي لقطة للأمر المنفذ “Drop Table” والذي سيؤدي إلى إسقاط الجدول Student من مساحة المفاتيح “University”.

بعد التنفيذ الناجح للأمر “Drop Table” سيتم إسقاط Table Student من keyspace University.
هذه هي اللقطة التي تُظهر الخطأ الذي أرجعه Cassandra عند محاولة الوصول إلى جدول الطالب غير الموجود.

Cassandra Truncate Table
يزيل الأمر “Truncate table” جميع البيانات من الجدول المحدد. قبل اقتطاع البيانات تأخذ كاساندرا لقطة من البيانات كنسخة احتياطية.
Truncate KeyspaceName.TableName
مثال
هناك ثلاثة سجلات في جدول الطالب. هذه هي السجلات الموجودة في الجدول.

هذه لقطة للأمر المنفذ “Truncate table” الذي سيزيل جميع البيانات من جدول Student.

بعد التنفيذ الناجح للأمر “Truncate Table” ، ستتم إزالة جميع البيانات من جدول الطالب.
فيما يلي لقطة لحالة قاعدة البيانات حيث لا توجد سجلات في جدول Student.

This article is useful for me
1+ 1 People like this post