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 不是一个数据库,它是一个混合型的非关系的 ...
随机推荐
- Gradle多渠道打包[umeng]
前言 国内Android应用市场品种太多,血统不纯,每次上线App都打包打到手软,上传上到吐血!好在我们有了Android studio和gradle,一条命令打包各种渠道版本App! 正文 Umen ...
- Codeforces 626E Simple Skewness 「数学」「二分」
题意: 给你一堆无序数,寻找它的一个子堆,使得子堆的平均数减中位数最大. 数字的个数n<=2e5 0<=xi<=1e6. 思路: 首先可以证明这堆数一定是奇数个,证明方法是尝试在奇数 ...
- DML(Oralce)
创建视图简化上面 视图就是一张表 一个子查询 虚表 视图通常以v$开头 grant create table,create view to scott; ...
- maven配置开发
1.项目中使用Log4j对其日志进行配置管理,采取的方式一种是通过properties文件设置,另一种方式就是通过设置xml文件的配置. 使用场景: 编程模型:log.err();log.debug( ...
- Debian的一个命令
dpkg是一个Debian的一个命令行工具,它可以用来安装.删除.构建和管理Debian的软件包.下面是它的一些命令解释:1)安装软件命令行:dpkg -i <.deb file name> ...
- Guid.NewGuid().ToString()的几种格式
1.Guid.NewGuid().ToString("N") 结果为: 38bddf48f43c48588e0d78761eaa1ce6 2.Guid.NewGuid() ...
- VS2013 当前不会命中断点还未为文档加载任何符号
情况:在别人那边的项目可以调试,在我这边不行.看来是电脑环境问题了 自己试过 VS2013修复下(用了1个半小时),点评:无效 网上 五花八门的都不适合 1.设置与当前版本不一致取消打勾. 点评 ...
- MFC六大核心机制之一:MFC程序的初始化
很多做软件开发的人都有一种对事情刨根问底的精神,例如我们一直在用的MFC,很方便,不用学太多原理性的知识就可以做出各种窗口程序,但喜欢钻研的朋友肯定想知道,到底微软帮我们做了些什么,让我们在它的框架下 ...
- coffeeScript 语法总结
CoffeeScript ---->安装node.js ---->安装coffeeScript 语句: 注意:没有分号,语句由新的一行结束:多条语句写到同一行时需要分号表示一条语句的结束( ...
- openstack4j接口调试
//import java.util.List;////import org.openstack4j.api.OSClient.OSClientV3;//import org.openstack4j. ...