本文基于Cassandra2.1.15, Cassandra2.1.15 是拥有cassandra-cli 组件的最后一个版本。从 2.2开始 cassandra-cli组件就被移除了。
Cassandra作为一个NoSQL的数据库,水平扩展能力非常的优越。
下文演示如何在 cassandra-cli (cassandra 控制台客户端) 中 创建Keyspaces(键空间),ColumnFamily(列族)与增加数据,查询 等操作。
(1)Cassandra与传统关系型数据库的对比
由于Cassandra与关系型数据库非常的相像。相当于有不定列的关系型数据库,首先给出一个Cassandra数据模型与传统的关系型数据库的对比关系。
(2)通过 cassandra-cli 操作 cassandra
首先启动 cassandra, bin目录下的 cassandra.bat (windows) , cassandra(Linux)
然后启动 cassandra-cli, bin目录下的 cassandra-cli.bat (windows) , cassandra-cli (Linux)
首先注意一点,在cli中的命令一定要以 ; 结束
帮助文档 命令: help;
对于详细的操作 命令:help create keyspace;
以下这些命令更详细的参数, 都可以通过help得到, 兴趣是最好的老师
创建 keyspace
命令 create keyspace KeyspaceName;
示例:
使用keyspace
命令: use KeyspaceName;
示例:
======================== Column Family (列族) =====================
创建 column family (列族)
命令: create column family columnFamilyName;
示例: 创建 column family 并指定排序规则 为 utf-8;
向 Column family (列族) 列族中插入数据
命令: set columnFamilyName[ Row key ][ Column name ] = Column value;
Row key: 相当于Row的key, 一行的key( Primary key)
Column name: 具体的列名
示例:
从 Column family(列族) 中按 主键 查询
命令: get columnFamilyName['Row key'];
示例:
删除 column family (列族)
命令: drop column family columnFamilyName;
============== Super Column Family (超级列族) ============
创建 Super Column Family (超级列族):
命令: create column family columnFamilyName with column_type=Super;
示例: