技术开发 频道

NoSQL数据库:Cassandra安装配置到入门

  【IT168 技术】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:\Program Files\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步骤:

  打开bin文件夹下面cassandra.bat服务(注意:打开该服务后不能关闭否则后面连接不上)

  打开bin 文件夹下面的cassandra-cli.bat 输入:connect localhost/9160 连接canssandra数据库

  三、Cassandra的目录说明

bin存放与 Cassandra 操作的相关脚本
conf存放配置文件的目录
interfaceCassandra 的 Thrift 接口定义文件,可以用于生成各种编程语言的接口代码
Javadoc源代码的 javadoc
libCassandra 运行时所需的 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. 创建keyspace (twissandra)

[default@unknown] create keyspace twissandra with replication_factor=1
and placement_strategy='org.apache.cassandra.locator.SimpleStrategy';

  2. 创建Column Family

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

  下面创建 Column Family(users)

[default@twissandra] create column family users with comparator = UTF8Type
...
and column_metadata = [{column_name: password, validation_class:
... UTF8Type}
];

  3. 在twissandra. Users下面插入值

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

  4. 获取刚插入的值

[default@twissandra] get users['jsmith'];
0
相关文章