Cassandra 是一个分布式数据库,其底层架构与 HBase 相似,但它也支持使用 CQL(Cassandra Query Language)进行类似 SQL 的查询。不过,需要注意的是,Cassandra 的数据模型和查询方式与传统关系型数据库(如 MySQL)有所不同,它更侧重于分布式存储和查询性能。
以下是 Cassandra 中常用的一些 CQL 操作和 SQL 类似操作的对应:
1. 创建 Keyspace(类似于 SQL 中的数据库)
在 Cassandra 中,keyspace 是最顶层的命名空间,用于存储一个或多个表。创建 keyspace 的 CQL 语句如下:
CREATE KEYSPACE IF NOT EXISTS mykeyspace
WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
这里,SimpleStrategy
是复制策略的一种,replication_factor
指定了数据副本的数量。
2. 创建表
在 Cassandra 中,表是存储数据的基本单位。创建表的 CQL 语句需要指定表的名称、keyspace、列族(column families)以及主键等。例如:
CREATE TABLE IF NOT EXISTS mykeyspace.mytable (
id uuid PRIMARY KEY,
name text,
age int
);</