Cassandra从安装配置到入门

来源:互联网 发布:mysql合计函数 编辑:程序博客网 时间:2024/05/21 08:57

Cassandra简介:

Cassandra属于最近比较流行的一款NoSQL数据库,http://nosql-database.org/中给NoSQL的定义如下:

下一代的数据库产品应该具备这几点:非关系型的,分布式的,开源的,可以线性扩展的。这类数据库最初的目的在于提供现代网站可扩展的数据库解决方案。这个运动开始于2009年初,目前正在迅速的发展。这种类型的数据库具有:自由的schema,数据多处备份,简单的编程API,数据的最终一致性保证等等。所以我们将这种类型的数据库称为NoSQL(不仅仅是SQL,全称为“not only sql”)。

下面我们一起来看看如果分别在Windows环境下安装和部署Cassandra。

下载cassandra 去http://cassandra.apache.org/下载即可

下载JDK 网上一搜索一大把

一、环境要求:

1.安装Java的JDK 配置环境

      假如JDK安装目录在:C:/ProgramFiles/Java/jdk1.6.0下

右击我的电脑->高级->环境变量->新建->变量名输入:JAVA_HOME(注意:变量名一定得为这个), 变量值就将JDK安装目录复制到里面

       2. 配置Cassandra环境

              假如Cassandra 解压在目录:D:/apache-cassandra-0.7.6-2下

右击我的电脑->高级->环境变量->新建->变量名输入:Cassandra_Path变量值就将Cassandra 解压在目录复制到里面

环境配置好后接下来开始应用

二、Cassandra应用:

1. Cassandra 图解

 

Cassandra 的数据模型的基本概念

1. Cluster : Cassandra 的节点实例,它可以包含多个 Keyspace
2. Keyspace : 用于存放 ColumnFamily 的容器,相当于关系数据库中的 Schema 或     database 

3. ColumnFamily : 用于存放 Column 的容器,类似关系数据库中的 table 的概念

4. SuperColumn :它是一个特列殊的 Column, 它的 Value 值可以包函多个 Column

5. Columns:Cassandra 的最基本单位。由 name , value , timestamp 组成

2.启动Cassandra步骤

  1. 打开bin文件夹下面cassandra.bat服务(注意:打开该服务后不能关闭否则后面连接不上)$$130^$^
  2. 打开bin 文件夹下面的cassandra-cli.bat 输入:connect  localhost/9160 连接canssandra数据库

 

Cassandra的目录说明

bin

存放与 Cassandra 操作的相关脚本

conf

存放配置文件的目录

interface

Cassandra 的 Thrift 接口定义文件,可以用于生成各种编程语言的接口代码

Javadoc

源代码的 javadoc

lib

Cassandra 运行时所需的 jar 包

通过Cassandra自带的控制台(Cassandra-cli.bat)实现数据增、删、改、查

 

一般的网站介绍Cassandra入门都是写:

set Keyspace1.Standard2['studentA']['age']= '18'

要注意的是: 刚开始Keyspace1.Standard2是不存在或者没有用命令指定到到Keyspace1下面,所以不能直接set Keyspace1.Standard2['studentA']['age'] ='18'

因为这样的话就相当于直接在keyspace1下面的standard2中添加一Columns,如果你Cassandra中没有keyspace1或者没有用命令指定到keyspace1下自然会报错的。

 

下面我将从创建keyspace到往中间插入值开始讲起:

  1. 1.           创建keyspace (twissandra)

[default@unknown] create keyspace twissandrawith replication_factor=1

andplacement_strategy='org.apache.cassandra.locator.SimpleStrategy';

 

  1. 2.           创建Column Family

[default@unknown] use twissandra;  //先将当前指令定位到keyspace: twissandra下

下面创建 Column Family(users)

 [default@twissandra] create column familyusers with comparator = UTF8Type

...    and column_metadata = [{column_name: password, validation_class:

...    UTF8Type}];

  1. 3.           在twissandra. Users下面插入值

  [default@twissandra]set users['jsmith']['password']='ch@ngem3';

 

  1. 4.          获取刚插入的值

      [default@twissandra] get users['jsmith'];

 

转:http://www.haogongju.net/art/27749