Bảng Cassandra: Tạo, Thay đổi, Thả & Cắt ngắn (với Ví dụ)

Mục lục:

Anonim

Cú pháp của ngôn ngữ truy vấn Cassandra (CQL) giống với ngôn ngữ SQL.

  • Tạo bảng
  • Bảng thay đổi
  • Bảng thả
  • Bảng cắt ngắn

Cách tạo bảng

Họ cột trong Cassandra tương tự như bảng RDBMS. Họ cột được sử dụng để lưu trữ dữ liệu.

Lệnh 'Tạo bảng' được sử dụng để tạo họ cột trong Cassandra.

Cú pháp

Create table KeyspaceName.TableName(ColumnName DataType,ColumnName DataType,ColumnName DataType… Primary key(ColumnName)) with PropertyName=PropertyValue;
  1. Khóa chính: Có hai loại khóa chính.
    1. Khóa chính đơn : Khóa chính duy nhất được chỉ định theo cú pháp sau.

Cú pháp

Primary key (ColumnName) 

Trong khóa chính duy nhất, chỉ có một cột duy nhất. Cột đó còn được gọi là khóa phân vùng. Dữ liệu được phân vùng trên cơ sở của cột đó. Dữ liệu được lan truyền trên các nút khác nhau trên cơ sở khóa phân vùng.

  1. Khóa chính kết hợp : Khóa chính kết hợp được chỉ định theo cú pháp sau.

Cú pháp

Primary key(ColumnName1,ColumnName2… )

Trong cú pháp trên, ColumnName1 là khóa phân vùng và ColumnName2 là khóa Phân cụm. Dữ liệu sẽ được phân vùng dựa trên ColumnName1 và dữ liệu sẽ được phân cụm dựa trên ColumnName2. Phân cụm là quá trình sắp xếp dữ liệu trong phân vùng.

  1. Khóa phân vùng phức hợp

    Khóa phân vùng phức hợp được chỉ định theo cú pháp sau.

    Cú pháp

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

    Trong cú pháp trên, ColumnName1 và ColumnName2 là khóa phân vùng ghép. Dữ liệu sẽ được phân vùng trên cơ sở cả hai cột ColumnName1 và ColumnName2 và dữ liệu sẽ được phân nhóm trên cơ sở ColumnName3. Nếu bạn có quá nhiều dữ liệu trên một phân vùng duy nhất. Sau đó, khóa phân vùng phức hợp được sử dụng. Khóa phân vùng phức hợp được sử dụng để tạo nhiều phân vùng cho dữ liệu.

  • Với mệnh đề

    "Với mệnh đề" được sử dụng để chỉ định bất kỳ thuộc tính nào và giá trị của nó cho bảng được xác định. Ví dụ, nếu bạn muốn nén dữ liệu bảng Cassandra. Bạn có thể đặt thuộc tính nén bằng cách chỉ định giá trị thuộc tính thuật toán nén trong "Mệnh đề có".

Thí dụ

Đây là việc thực thi lệnh 'Tạo bảng' sẽ tạo tên bảng 'Sinh viên' trong không gian phím 'Đại học'.

Sau khi thực hiện thành công lệnh 'Tạo bảng', bảng 'Sinh viên' sẽ được tạo trong không gian phím 'Đại học' với các cột RollNo, Name và dept. RollNo là khóa chính. RollNo cũng là một khóa phân vùng. Tất cả dữ liệu sẽ nằm trong một phân vùng duy nhất.

Bảng Cassandra Alter

Lệnh 'Alter Table' được sử dụng để bỏ cột, thêm cột mới, thay đổi tên cột, thay đổi kiểu cột và thay đổi thuộc tính của bảng.

Cú pháp

Sau đây là cú pháp của lệnh 'Alter Table.'

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

Thí dụ

Đây là ảnh chụp nhanh của lệnh 'Alter Table' sẽ thêm cột mới trong bảng Student.

Sau khi thực hiện thành công lệnh 'Alter Table', một cột mới 'Semester' với kiểu dữ liệu 'int' sẽ được thêm vào bảng Student.

Đây là ảnh chụp màn hình hiển thị bảng Sinh viên được cập nhật.

Bảng thả

Lệnh 'Bảng thả xuống' thả bảng được chỉ định bao gồm tất cả dữ liệu từ không gian phím. Trước khi bỏ bảng, Cassandra chụp nhanh dữ liệu không phải giản đồ làm bản sao lưu.

Cú pháp

Drop Table KeyspaceName.TableName

Thí dụ

Đây là ảnh chụp nhanh của lệnh được thực thi 'Bảng thả xuống' sẽ thả bảng Sinh viên từ không gian phím 'Đại học'.

Sau khi thực hiện thành công lệnh 'Drop Table', bảng Student sẽ bị loại khỏi Keyspace University.

Đây là ảnh chụp nhanh cho thấy lỗi được trả về bởi Cassandra khi cố gắng truy cập bảng Sinh viên không tồn tại.

Bảng cắt ngắn

Lệnh 'Cắt ngắn bảng' xóa tất cả dữ liệu khỏi bảng được chỉ định. Trước khi cắt bớt dữ liệu, Cassandra lấy ảnh chụp nhanh của dữ liệu làm bản sao lưu.

Cú pháp

Truncate KeyspaceName.TableName

Thí dụ

Có ba bản ghi trong bảng Sinh viên. Đây là các bản ghi trong bảng.

Đây là ảnh chụp nhanh của lệnh được thực thi 'Cắt ngắn bảng' sẽ xóa tất cả dữ liệu khỏi bảng Sinh viên.

Sau khi thực hiện thành công lệnh 'Truncate Table', tất cả dữ liệu sẽ bị xóa khỏi bảng Student.

Đây là ảnh chụp nhanh trạng thái cơ sở dữ liệu nơi không có bản ghi nào trong bảng Sinh viên.