Tabela Cassandra: criar, alterar, descartar e truncar (com exemplo)

A sintaxe da linguagem de consulta Cassandra (CQL) é semelhante à linguagem SQL.

Como criar uma mesa

A família da coluna no Cassandra é semelhante à tabela RDBMS. A família de colunas é usada para armazenar dados.

O comando 'Criar Tabela' é usado para criar família de colunas no Cassandra.

Sintaxe

 Create table KeyspaceName.TableName ( ColumnName DataType, ColumnName DataType, ColumnName DataType . . . Primary key(ColumnName) ) with PropertyName=PropertyValue;
  1. Chave primária: Existem dois tipos de chave primária.
    1. Chave primária única: A chave primária única é especificada pela seguinte sintaxe.

Sintaxe

Primary key (ColumnName) 

Na única chave primária, existe apenas uma única coluna. Essa coluna também é chamada de chave de particionamento. Os dados são particionados com base nessa coluna. Os dados são espalhados em nós diferentes com base na chave de partição.

  1. Chave primária composta: A chave primária composta é especificada pela seguinte sintaxe.

Sintaxe

Primary key(ColumnName1,ColumnName2 . . .)

Na sintaxe acima, ColumnName1 é a chave de particionamento e ColumnName2 é a chave de clustering. Os dados serão particionados com base em ColumnName1 e os dados serão agrupados com base em ColumnName2. Clustering é o processo que classifica os dados na partição.

  1. Chave de particionamento composta

    A chave de particionamento composta é especificada pela seguinte sintaxe.

    Sintaxe

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

    Na sintaxe acima, ColumnName1 e ColumnName2 são a chave de partição composta. Os dados serão particionados com base nas colunas ColumnName1 e ColumnName2 e os dados serão agrupados com base no ColumnName3. Se você tiver muitos dados em uma única partição. Em seguida, a chave de particionamento composta é usada. A chave de particionamento composta é usada para criar várias partições para os dados.

  • Com Cláusula

    'With clause' é usado para especificar qualquer propriedade e seu valor para a tabela definida. Por exemplo, se você deseja compactar os dados da tabela do Cassandra. Você pode definir a propriedade de compactação especificando o valor da propriedade do algoritmo de compactação em 'Com a cláusula'.

Exemplo

Aqui está a execução do comando 'Criar tabela' que criará o nome da tabela 'Aluno' no keyspace 'Universidade'.

Após a execução bem-sucedida do comando 'Criar tabela', a tabela 'Aluno' será criada no keyspace 'Universidade' com as colunas RollNo, Nome e departamento. RollNo é a chave primária. RollNo também é uma chave de partição. Todos os dados estarão em uma única partição.

Mesa Cassandra Alter

O comando 'Alterar Tabela' é usado para eliminar uma coluna, adicionar uma nova coluna, alterar o nome da coluna, alterar o tipo da coluna e alterar a propriedade da tabela.

Sintaxe

A seguir está a sintaxe do comando 'Alterar Tabela'.

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

Exemplo

Aqui está o instantâneo do comando 'Alterar Tabela' que irá adicionar nova coluna na tabela Aluno.

Após a execução bem-sucedida do comando 'Alterar Tabela', uma nova coluna 'Semestre' com o tipo de dados 'int' será adicionada à tabela Aluno.

Aqui está a captura de tela que mostra a tabela de Alunos atualizada.

Mesa de queda

O comando 'Eliminar tabela' elimina a tabela especificada, incluindo todos os dados do keyspace. Antes de descartar a tabela, Cassandra tira um instantâneo dos dados, não do esquema, como um backup.

Sintaxe

 Drop Table KeyspaceName.TableName

Exemplo

Aqui está o instantâneo do comando executado 'Drop Table' que removerá a tabela Student do keyspace 'University'.

Após a execução bem-sucedida do comando 'Drop Table', a tabela Student será removida do keyspace University.

Aqui está o instantâneo que mostra o erro retornado pelo Cassandra ao tentar acessar a tabela do Aluno que não existe.

Tabela Truncada

O comando 'Truncar tabela' remove todos os dados da tabela especificada. Antes de truncar os dados, Cassandra tira o instantâneo dos dados como um backup.

Sintaxe

 Truncate KeyspaceName.TableName

Exemplo

Existem três registros na tabela Aluno. Estes são os registros da tabela.

Aqui está o instantâneo do comando executado 'Truncar tabela' que irá remover todos os dados da tabela Aluno.

Após a execução bem-sucedida do comando 'Truncar Tabela', todos os dados serão removidos da tabela Aluno.

Aqui está o instantâneo do estado do banco de dados onde não há registros na tabela Aluno.