Cassandra 之 入门
1、到官网下载压缩包。
http://cassandra.apache.org/download/
我下载的是最新的
另外:语言支持:http://wiki.apache.org/cassandra/ClientOptions
2、解压到特定目录,我的是
- D:\Programs\apache-cassandra-2.0.10
3、环境变量,改配置。
此处只是入门,统统不需要,略过,实战的话,才需要这些个东东。
4、启动服务。
打开命令行,进入上边文件夹下的bin目录。执行cassandra.bat如下操作.


Cassandra可以通过cli、cqlsh两种方式操作数据库
切记,两种指令虽有类似,但不尽相同,切勿混用。
5、通过cli操作接数据库,
5.1 cli连接数据库,执行cassandra-cli.bat

5.2、cli创建数据库“demo”,建表users;
(网上好多入门文章,不讲怎么建表,直接上来就插入数据,进行查询,这不坑爹吗)
先看图吧。


创建完成,使用 show keyspaces查看所有数据库,其中demo大概就长这个样子的。

以下是代码,方便大家复制粘贴。
注意:
1、备注不要拷贝到命令行执行哈。
2、canssdra 每个cli指令后边都加“;”分号,即表示该指令结束了
redis每个指令后边均不能加标点符号,否则会保错
//创建数据库demo,如已存在,请删掉该数据库。方法,drop keyspace demo; create keyspace demo; //切换到数据库demo
use demo; //建表users
create column family users
with comparator = UTF8Type
and key_validation_class=UTF8Type
and column_metadata=[
{column_name:full_name,validation_class:UTF8Type }
{column_name:email,validation_class:UTF8Type }
{column_name:state,validation_class:UTF8Type }
{column_name:gender,validation_class:UTF8Type }
{column_name:birth_year,validation_class:LongType }]; assume users keys as utf8;
assume User comparator as utf8;
assume Users validator as utf8; //插入数据,'1234'为该列的key ,至于为啥是字符串而不是数字,因为上边我们创建标的时候指定了key_validation_class=UTF8Type set users[utf8('1234')][utf8('full_name')] = utf8('zhangxuhui');
set users[utf8('1234')][utf8('email')] = utf8('mypasswordstr');
set users[utf8('1234')][utf8('state')] = utf8('enable');
set users[utf8('1234')][utf8('gender')] = utf8('M');
set users[utf8('1234')][utf8('birth_year')] = 1984;
5.3、cli查询
get users[utf8('1234')];
5.4、附:部分概念对照
keyspace ==========databasename column family=======table column===========字段 super column=======其实就是多个字段的集合 其他常用指令: show keyspaces;//列出所有数据库 drop keyspace demo;删除名字叫demo的数据库
其他的大家输入help,自己慢慢研究吧
附CLI指令目录:
http://blog.sina.com.cn/s/blog_4d14fb2b0100plaq.html
http://wiki.apache.org/cassandra/CassandraCli08
6、通过cql操作数据库
6.1、下载安装python相对应版本,
切记不要安装3X的,(cassandra 目录下cqlsh用的是2X的语法,安装3X无法执行)
地址:https://www.python.org/downloads/windows/
X86:https://www.python.org/ftp/python/2.7.9/python-2.7.9.msi
X64:https://www.python.org/ftp/python/2.7.9/python-2.7.9.amd64.msi
比如,我机子是win7 X64 ,需要安装64位的。若是64位机子安装32为python,cassandra cqlsh会报“监测不到python版本”
6.2 cqlsh连接数据库,建表,查询
//创建数据库
cqlsh:system> CREATE KEYSPACE cqldemo WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1
};
//切换数据库
cqlsh:system> use cqldemo;
//创建表
cqlsh:cqldemo> create table cqlusers(user_id int PRIMARY KEY, uname text, email text, state int,gender int,la
stlogin Timestamp);
//插入数据
cqlsh:cqldemo> INSERT INTO cqlusers (user_id, uname , email,state,gender,lastlogin) VALUES (1,'zxh','piaolingz
xh@qq.com',1,1,'now');
cqlsh:cqldemo> INSERT INTO cqlusers (user_id, uname , email,state,gender,lastlogin) VALUES (2,'zxh2','piaoling
zxh@qq2.com',1,1,'now');
//查询数据
cqlsh:cqldemo> select * from cqlusers;
user_id | email | gender | lastlogin | state | uname
---------+---------------------+--------+----------------------------------------+-------+-------
1 | piaolingzxh@qq.com | 1 | 2015-01-04 19:05:50China Standard Time | 1 | zxh
2 | piaolingzxh@qq2.com | 1 | 2015-01-04 19:05:53China Standard Time | 1 | zxh2
(2 rows)
cqlsh:cqldemo>
附:cql指令:http://cassandra.apache.org/doc/cql3/CQL.html
7、Cassandra可以通过cli、cqlsh两种方式操作数据库,切记,两种指令虽有类似,但不尽相同,切勿混用。
Cassandra 之 入门的更多相关文章
- Cassandra 单机入门例子——有索引
入门例子: http://wiki.apache.org/cassandra/GettingStarted 添加环境变量并source生效,使得可以在任意位置执行cassandra/bin安装目录下的 ...
- Cassandra开发入门文档第五部分(使用场景)
正确建模 开发人员在构建Cassandra数据库时犯的另一个主要错误是分区键的选择不佳.cassandra是分布式的.这意味着您需要有一种方法来跨节点分布数据.Cassandra通过散列每个表的主键( ...
- Cassandra开发入门文档第四部分(集合类型、元组类型、时间序列、计数列)
Cassandra 提供了三种集合类型,分别是Set,List,MapSet: 非重复集,存储了一组类型相同的不重复元素,当被查询时会返回排好序的结果,但是内部构成是无序的值,应该是在查询时对结果进行 ...
- Cassandra开发入门文档第三部分(非规范化关系结构、批处理)
非规范化关系结构 第二部分我们讲了复合主键,这可以灵活的解决主从关系,也即是一对多关系,那么多对多关系呢?多对多关系的数据模型应该回答两个问题: 我跟着谁? 谁跟着我? -- 建表,我们发现这里有个不 ...
- Cassandra开发入门文档第二部分(timeuuid类型、复合主键、静态字段详解)
timeuuid类型 timeuuid具有唯一索引和日期时间的综合特性,可以与日期和时间函数联合使用,常用的关联函数: dateOf() now() minTimeuuid() and maxTime ...
- Cassandra开发入门文档第一部分
Cassandra的特点 横向可扩展性: Cassandra部署具有几乎无限的存储和处理数据的能力.当需要额外的容量时,可以简单地将更多的机器添加到集群中.当新机器加入集群时,Cassandra需要对 ...
- 快速上手 Rook,入门云原生存储编排
Rook 是一个开源 cloud-native storage orchestrator(云原生存储编排器),为各种存储解决方案提供平台.框架和支持,以与云原生环境进行原生集成. Rook 将存储软件 ...
- SpringBoot-Security-用户权限分配-项目搭建
SpringBoot原则是约定优于配置,简化spring应用开发,去繁从简,产品级别的应用. SpringBoot有哪些优点1.快速创建独立运行的spring项目与主流框架集成 2.使用嵌入式的ser ...
- 分布式 Key-Value 存储系统:Cassandra 入门
Apache Cassandra 是一套开源分布式 Key-Value 存储系统.它最初由 Facebook 开发,用于储存特别大的数据. Cassandra 不是一个数据库,它是一个混合型的非关系的 ...
随机推荐
- PYTHON ASYNCIO: FUTURE, TASK AND THE EVENT LOOP
from :http://masnun.com/2015/11/20/python-asyncio-future-task-and-the-event-loop.html Event Loop On ...
- [SQL]SqL给局部变量赋值有两种方法
给局部变量赋值有两种方法: .SET @variable_name=value .SELECT @variable_name=value 两者的区别:SET赋值语句一般用于赋给变量一个指定的常量,SE ...
- CodeForces 604C 【思维水题】`
题意: 给你01字符串的长度再给你一个串. 然后你可以在这个串中选择一个起点和一个终点使得这个连续区间内所有的位取反. 求: 经过处理后最多会得到多少次01变换. 例如:0101是4次,0001是2次 ...
- 蓝桥杯---汉字取首字母(位运算 & 水题)
确实题目虽然有点水,但是开始的时候好像还真的没有想到怎么提取出这个编号一不小心感觉可以可以用unsigned char 这种类型,直接转为16进制,但是之后发现虽然第一次在codeblock中还行,但 ...
- js 未结束的字符串常量错误解决方法
1.JAVASCRIPT引用时,使用的字符语言不一致. 比如:<script type=”text/javascript” src=”xxx.js” charset=”UTF-8″>.xx ...
- Android——KEYCODE列表
电话键 键名 描述 键值 KEYCODE_CALL 拨号键 5 KEYCODE_ENDCALL 挂机键 6 KEYCODE_HOME 按键Home 3 KEYCODE_MENU 菜单键 82 KE ...
- 《Code Complete》ch.20 软件质量概述
WHAT & WHY ? 软件质量的特性 外在特性 正确性(Correctness) 可用性(Usability) 效率(Efficiency) 可靠性(Reliability) 完整性(In ...
- cocos2d-lua class 方法解释
lua中没有类的概念,有的只是表(table),而类之间的继承也就是将父类的表连到了一起,派生类中没有找到的属性和方法就通过元表查找父类,在cocos2d-lua中,封装好的class方法,完美的实现 ...
- WIFI知识累计之802.11协议radiotap头解析方法
radiotap官方网站:http://www.radiotap.net/Radiotap 该网站详细介绍了radiotap的各个字段的长度和介绍,并包含解析代码项目地址,该文就在此网站的基础编写一些 ...
- 构造一个简单的linux系统
1.搭建环境 cd ~/Work/ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.18.6.tar.xz xz -d linux- ...