日期:2014-05-16  浏览次数:20408 次

Cassandra 集群配置
2.Cluster的配置
Cassandra 使用Gossip协议P2P的方式进行节点间的通信
需要在配置的节点中修改conf/storage-conf.xml中增加<Seed>,类似DNS的作用,显式的配置它所连接的节点
例如
  <Seeds>
      <Seed>127.0.0.1</Seed>
      <Seed>10.61.0.184</Seed>
      <Seed>10.61.0.180</Seed>
  </Seeds>

另外,需要修改ListenAddress和ThriftAddress为本节点的IP的地址,例如
<ListenAddress>10.61.0.180</ListenAddress>,这个端口控制端口,Cluster的节点通过该端口进行通信
<ThriftAddress>10.61.0.180</ThriftAddress>,这个端口监听来自客户端的消息,使用Thrift编程就用这个端口

所使用的节点配置好后,都重启,发现日志上已经显示了有节点加入Cluster
在Linux下可以用下面的命令测试连接在某一台机器上的Cluster中的机器
sh nodeprobe --host 10.61.0.184 cluster

3.编程接口Thrift的配置
使用下面的命令,获取Thrift的压缩包
wget -O thrift.tgz http://gitweb.thrift-rpc.org/?p=thrift.git;a=snapshot;h=HEAD;sf=tgz
如果使用Java语言,可以在解压Thrift后,到安装目录下的/lib/java目录,使用ant编译得到libthrift.jar

注意:编译Java的jar时,需要用到ant,版本需要在1.7.1及以上,不然在编译时提示"not support nested 'typedef' element"的异常

4.编写客户端
把上一步生成的libthrift.jar和cassandra/lib下的apache-cassandra-inbubating-0.4.1.jar引入classpath
下面一个测试代码,修改自官方文档
编写测试时,使用了两台机器搭建了两个node,组成Cluster
Ubuntu9.04 /P4 2.4/ 1G DDR
WindowsXP SP3/P4 2.8/ 2G DDR
1 楼 cmzx3444 2010-05-24  
请问一下,cassandra怎么做分页啊,还有就是排序问题,cassandra都是按照column排序的,但是我有个column叫age,我想根据age排序,找出前10的用户该怎么设计啊,难道我要把age的值作为column的name,value直接为空??纠结啊