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 不是一个数据库,它是一个混合型的非关系的 ...
随机推荐
- div的contenteditable和placeholder蹦出的火花
今天在做手机端发布描述内容时,需要实现换行,还需要有plachholder. 在文本框中换行自然想到了textarea. 问题似乎已经解决了,但是当内容发布后,在html中显示换行都丢失了. 这个时候 ...
- 类似 go get –u 的命令行参数实现
我们可能需要类似 go get –u -. 这样的方式来实现我们的应用,这时候我们无法简单地使用 flag.Parse 了,而是要用 FlagSet 了, 使用例子如下: package main ...
- python实现线程池
线程池 简单线程池 import queue import threading import time class ThreadPool(object): #创建线程池类 def __init__(s ...
- 错误记录,找不到sqlite dll
Could not load file or assembly'System.Data.SQLite.dll' or one of its depedencies.找不到指定模块. 在CSDN找到解决 ...
- Arch时间校准
sudo ln -s /usr/share/zoneinfo/UTC /etc/localtime sudo hwclock --systohc --utc sudo timedatectl set- ...
- git小操作之checkout、stash
git checkout会带上当前changed但没有commit的内容到目标分支 git stash用来暂存当前改动,并且会退代码到上一个commit:git stash pop则取出所stash的 ...
- android 拍照,裁切,上传圆形头像, 图片等比缩放
最近太忙了,没有空更新博客,其它部分以后再更新: 今天给大家分享的是解决解析图片的出现oom的问题,我们可以用BitmapFactory这里的各种Decode方法,如果图片很小的话,不会出现oom,但 ...
- 慕课网-安卓工程师初养成-3-6 Java中的逻辑运算符
来源: http://www.imooc.com/code/1301 逻辑运算符主要用于进行逻辑运算.Java 中常用的逻辑运算符如下表所示: 我们可以从“投票选举”的角度理解逻辑运算符: 1. 与: ...
- windows7 下的日期没有internet时间的选项卡
原因1:你在某个域里面,退出就可以了 原因2:你把windows Time的服务给禁掉或者关掉了, 步骤:运行,输入services.msc 确定,查找到windows Time开了即可
- #define的一些
// 生成一个字符串 #define NSString(...) [NSString stringWithFormat:__VA_ARGS__]