Cassandra Пример таблицы: создание, изменение, удаление и усечение таблицы

Синтаксис Cassandra язык запросов (CQL) похож на SQL язык.

Как создать таблицу в Cassandra

Семейство колонн в Cassandra аналогична таблице РСУБД. Семейство столбцов используется для хранения данных.

Команда «Создать таблицу» используется для создания семейства столбцов в Cassandra.

Синтаксис

Create table KeyspaceName.TableName
(
ColumnName DataType,
ColumnName DataType,
ColumnName DataType
.
.
.
Primary key(ColumnName)
) with PropertyName=PropertyValue;

1. Первичный ключ: Есть два типа первичный ключ.

  • Единый первичный ключ: Одиночный первичный ключ определяется следующим синтаксисом.

Синтаксис

Primary key (ColumnName)

В единственном первичном ключе имеется только один столбец. Этот столбец также называется ключом разделения. Данные секционируются на основе этого столбца. Данные распределяются по разным узлам на основе ключа раздела.

2. Составной первичный ключ: Составной первичный ключ задается следующим синтаксисом.

Синтаксис

Primary key(ColumnName1,ColumnName2 . . .)

В приведенном выше синтаксисе ColumnName1 — это ключ разделения, а ColumnName2 — это Clustering key. Данные будут разделены на основе ColumnName1, а данные будут кластеризованы на основе ColumnName2. Clustering — это процесс сортировки данных в разделе.

3. Ключ составного разделения: Составной ключ разделения определяется следующим синтаксисом.

Синтаксис

Primary Key((ColumnName1,ColumnName2),ColumnName3...))

В приведенном выше синтаксисе ColumnName1 и ColumnName2 являются составным ключом раздела. Данные будут секционированы на основе обоих столбцов ColumnName1 и ColumnName2, а данные будут кластеризованы на основе ColumnName3. Если у вас слишком много данных в одном разделе. Затем используется составной ключ разделения. Составной ключ разделения используется для создания нескольких разделов для данных.

  • С пунктом

«Предложение With» используется для указания любого свойства и его значения для определенной таблицы. Например, если вы хотите сжать Cassandra данные таблицы. Вы можете установить свойство сжатия, указав значение свойства алгоритма сжатия в разделе «С».

Пример

Вот выполнение команды «Создать таблицу», которая создаст таблицу с именем «Студент» в пространстве ключей «Университет».

Cassandra Создать таблицу

После успешного выполнения команды «Создать таблицу» в пространстве ключей «Университет» будет создана таблица «Студент» со столбцами RollNo, Name и dept. RollNo — это первичный ключ. RollNo также является ключом раздела. Все данные будут находиться в одном разделе.

Cassandra Изменить таблицу

Команда «Изменить таблицу» используется для удаления столбца, добавления нового столбца, изменения имени столбца, изменения типа столбца и изменения свойства таблицы.

Синтаксис

Ниже приведен синтаксис команды «Изменить таблицу».

Alter table KeyspaceName.TableName  +
Alter ColumnName TYPE ColumnDataype |
Add ColumnName ColumnDataType |
Drop ColumnName |
Rename ColumnName To NewColumnName |
With propertyName=PropertyValue

Пример

Вот снимок команды «Изменить таблицу», которая добавит новый столбец в таблицу «Студент».

Cassandra Изменить таблицу

После успешного выполнения команды «Изменить таблицу» в таблицу «Студент» будет добавлен новый столбец «Семестр» с типом данных «int».

Вот снимок экрана, на котором показана обновленная таблица учеников.

Cassandra Изменить таблицу

Cassandra Удалить таблицу

Команда «Удалить таблицу» удаляет указанную таблицу, включая все данные из пространства ключей. Прежде чем уронить стол, Cassandra в качестве резервной копии делает снимок данных, а не схемы.

Синтаксис

Drop Table KeyspaceName.TableName

Пример

Вот снимок выполненной команды «Удалить таблицу», которая удаляет таблицу «Студент» из пространства ключей «Университет».

Cassandra Удалить таблицу

После успешного выполнения команды «Drop Table» таблица Student будет удалена из пространства ключей University.

Вот снимок, на котором показана ошибка, возвращаемая Cassandra при попытке доступа к несуществующей таблице учеников.

Cassandra Удалить таблицу

Cassandra Усечь таблицу

Команда «Обрезать таблицу» удаляет все данные из указанной таблицы. Прежде чем сокращать данные, Cassandra принимает снимок данных в качестве резервной копии.

Синтаксис

Truncate KeyspaceName.TableName

Пример

В таблице Student есть три записи. Это записи в таблице.

Cassandra Усечь таблицу

Вот снимок выполненной команды «Обрезать таблицу», которая удалит все данные из таблицы Student.

Cassandra Усечь таблицу

После успешного выполнения команды «Обрезать таблицу» все данные из таблицы Student будут удалены.

Вот снимок состояния базы данных, где в таблице Student нет записей.

Cassandra Усечь таблицу