Cassandra作为目前很热门的一个NOSQL型数据库,引起了很多的关注。对NOSQL感兴趣的我,也来作了一次简单的测试。
废话不多说,下面就来介绍下Cassandra多节点的部署。
部署要求:
1. JDK1.6
2. OS:linux,我在windows上实验过,不知道为啥一直没通(7000端口上只有windows的发包,双方不互相通信)
3. cassandra 0.6
OK,基本的东西都有了,进入到cassandra的目录,首先需要修改一些相关的文件路径:
1. log4j.properties 文件输出路径修改
2. storage-conf.xml CommitLogDirectory和DataFileDirectory路径修改
接着进行分布式节点的配置,还是修改torage-conf.xml :
1. <ClusterName>Test Cluster</ClusterName>
这个要求所有节点的名字都相同,如果不相同,则报类似 AName != BName 的错误
2. <ColumnFamily Name="Standard1" CompareWith="BytesType"/>
配置ColumnFamily 的一些属性,其中name是所要使用的ColumnFamily 名称,可以多个,客户端做CRUD操作时需要指定。注意所有的节点配置都需要一样(我就曾因配置不一致出过ClassCastException的异常)
3. <ReplicationFactor>2</ReplicationFactor>
配置数据需要复制的数量,复制的策略分RackUnawareStrategy和RackAwareStrategy两种方式(会根据不同的数据分布策略将复制数据进行不同的分布,参考:
http://wiki.apache.org/cassandra/Operations)
4. <Seeds>
<Seed>10.10.13.220</Seed>
<Seed>10.10.13.181</Seed>
<Seed>10.10.13.232</Seed>
</Seeds>
这个是所有分布式服务器节点的IP地址,如上面配置了3个IP即3个Cassandra节点
5. <ListenAddress>10.10.13.220</ListenAddress>
<ThriftAddress>10.10.13.220</ThriftAddress>
本节点监听客户端数据和与其他服务器节点通信的IP地址,只能为本机IP,且不能为127.0.0.1或localhost,否则与其他服务器不能建立正确交互
此处的IP地址也可以不填,即值为空,则所有的节点配置都一样,更方便部署。
搞定storage-conf.xml !下面的工作就是将所有的Cassandra服务器节点依次启动,通过日志就可以看到相关的节点连接上了,日志为:
INFO 13:04:52,098 Node /10.10.13.232 is now part of the cluster
到这里,Cassandra分布式节点服务器的搭建就完成了。使用官网提供的客户端代码进行测试,发现数据已经提交到服务器并且在多个节点间进行复制了
在这里抱怨一下:之前由于没有足够的服务器,使用windowsXP+solaris双节点进行测试,发现怎么也建立不起来。。。后来加入linux后,solaris+linux的方式却能正常走通,配置也都是一样的。
有空研究下为何在我的windows上不支持。。。。
参考地址:
http://cassandra.apache.org/
分享到:
相关推荐
Cassandra是一个开源的分布式数据库,结合了Dynamo的Key/Value与Bigtable的面向列的特点。
cassandra 分布式数据库
了解一个软件的配置项的意义是使用这个软件的前提,这里介绍 Cassandra 的配置文件(storage-config.xml)中各个配置项的意义,这其中包含有很多配置参数,我们可以对其进行调整以达到理想的性能。
CASSANDRA分布式模型与源代码分析文茂V0.7 - CASSANDRA-SHAWN.doc
它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被等知名网站所...
Cassandra是一个开源的分布式数据库,结合了Dynamo的Key/Value与Bigtable的面向列的特点,本文档对Cassandra源代码作了详细的分析,可以了解整个集群的运作细节。
为您提供ApacheCassandra 分布式数据库下载,Apache Cassandra是一个混合型的非关系的数据库,开源分布式Key-Value存储系统,主要特性有分布式、基于column的结构化、高伸展性!软件介绍 当您需要可扩展性和高可用...
Cassandra节点管理:添加,删除,移动,恢复节点
cassandra_snapshotter, 在S3上,使用快照和增量备份备份cassandra节点的工具 cassandra_snapshotter在S3上使用快照和增量备份备份cassandra节点的工具项目的范围是使集群更容易备份到 S3,并合并快照和增量备份。...
分布式测试 集群测试。 先决条件 应安装 ccm 的最新副本以启动和停止 Cassandra。 测试是使用鼻子测试运行的。 这些测试需要 datastax python 驱动程序。 一些测试仍然需要已弃用的 python CQL over thrift 驱动程序...
Cassandra分布式数据库架构与应用
1.CAP定理理与Cassandra 1.1 Cassandra优势 2.Cassandra ⼀一致性实现 2.1 CAS 2.2 Quorum读写 2.3 不不⼀一致产⽣生原因 2.4 Hinted handoff 2.5 Read repair 2.6 Manual repair 3.Cassandra应⽤用场景 ...
对于一个Cassandra群集来说,扩展性能是比较简单的事情,只管在群集里面添加节点就可以了。 这里有很多理由来选择Cassandra用于您的网站。和其他数据库比较,有三个突出特点: 模式灵活 :使用Cassandra,像文档...
1、分布式作业管理、调度、监控; 2、基于spark streaming+Cassandra的实时分析和监控,包括性能分析、账号安全主动防御。 web部分采用spring boot开发,前端采用angularJS组织页面相关的各个部分,系统的技术和效果...