cassandra入门二- Cassandra的配置

来源:互联网 发布:免费恋爱神器软件 编辑:程序博客网 时间:2024/05/24 01:43

Cassandra目前最新版本是1.2.1, 可以在http://cassandra.apache.org 下载


我是在Ubuntu下配置的, 下载完压缩包之后,直接解压缩. 

我的Ubuntu是12

jdk环境 1.6 

解压后得到7个 文件夹,其中 

bin下有一些工具,比如 cqlsh cassandra-cli 是跟数据库交互用的工具

conf 是配置文件

lib是要用到的包,如果用java写代码,里面有一些jar包是可以直接用的

javadoc是文档


可以用到的就这么多了.要运行cassandra 首先要建立cassandra的数据文件夹和日志文件夹并保证它们是可读的

用以下命令:

建立日志文件夹

 sudomkdir -p /var/log/cassandra sudochown -R `whoami` /var/log/Cassandra
建立数据文件夹

 sudo mkdir -p /var/lib/cassandra sudo chown -R `whoami` /var/lib/Cassandra
这两个文件夹是默认的,你可以在conf文件夹下面更改配置文件来设定自己的数据和日志文件夹

设置完成后可以运行 ./bin-cassandra -f 启动服务器, -f告诉cassandra留在前台,可以看日志输出.

至此,你已经拥有一台cassandra服务器了


到这里,我解释几个概念, 这几个概念并没有这么简单, 跟关系数据也完全不同,不过我可以类比下,

但是也似乎完全没有可比性,正如上文所说,你只知道马匹的情况下,我如何比喻你也理解不了汽车为

何物的,我只有告诉你, 汽车也有四个腿...

下面就是纯比喻,为了好理解,建议去看专业文档理解这些东西

Keyspace  类比RDBMS的 database 是数据库的最外层容器

column family  列族  类比  RDBMS  table 相当于表格

rowkey  行键值 类比 RDBMS 的 primary key 主键

super column family 超级列族...没有可比性 相当于列列面套了很多列


用cassandra要打破行的传统思维,因为cassandra是面向列的,这些是我最近几天的收获,跟大家分享下


cassandra的一个keyspace里面能建立很多column family 一个column family是很多类似column的集合

这句话我看到就很郁闷了, 其实我觉得就是表,但是也不能理解成平面的二维表.

RDBMS中,你建立一个表, 有一个主键userid,然后后面跟着一群,比如username,sex,age等

这时候,我们认为,userid,知道以后,就能搜索到username,sex,age, 一行数据是一个整体,这整张表就只有这四个列.

cassandra里面不一样,

cassandra要这样理解, 比如rowkey是userid,

我第一行数据是 1, 张三, 男 ,18 第二行数据可以是 2, 李四, 男, 22,已婚.

第二行数据比第一行多了一个列, 这在cassandra中是特点,casssandra第一行可以有几万个列

或者第二行只有几个列. 

所以,cassandra的一行其实是一个列的容器. 也就是我有一个key,然后我可以用这个key为

键值,往列里面装填数据,. 每行的列都不必是一样的. 

列有一个列名,有一个数据, 这些可以通过rowkey检索到.


....这个也太难讲明白了...汗...果然是只可意会不可言传啊..我说我为什么在开窍之前一直不理解呢,虽然现在也不是特别明白....算了,下一章




原创粉丝点击