`
zhangcxy
  • 浏览: 41317 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Cassandra

阅读更多

       最近的项目里用到了cassandra,所谓的nosql数据库,big data的大载体。其实都是扯淡,什么大数据,都是用来忽悠人的。(声明:技术选择不是本人)所以这次项目里它只是用来做缓存的。cassandra主要的特性自己可以在网上找到,实在找不到就百度百科。我不会写文章,所以我只简单罗列一些遇到的问题,希望能帮到大家,当然你也可以打打酱油神马的。我用的是1.2.11版本,没用最新的2.0。理解万岁。。。

1、cassandra有一套类似sql的语句叫cql,最新的是3.0版。这些相关API在网上都有,大家可以没事瞅两眼。当然要用这种东西得有宇宙神器python的支持。

cqlsh的安装

 a. 安装python,下载http://www.python.org/getit/

    配置path环境变量如:D:\Python27。只支持Python2.62.7Python3.x版本不支持。

 b. Cassandra1.2中的python驱动程序是在..\ Cassandra\pylib目录下的。

    DOS命令 下转到\Cassandra\pylib目录,运行python setup.py install命令安装驱动。

 c. windoscqlsh启动方法:

    用doc命令进入cassandrabin目录下,

    编写命令:python cqlsh localhost 9160(注:后面不要带任何符号)

    这样就ok了。你接下来就可已使用类似以下的语句了:

      create table users(
      id  int primary key,
      username text,
      password text,
      email text,
      phone text,
      age int,
       );
    insert in to                t_user(id,username,password,email,phone,age)values('1','zhangsan','111','xxxx@sina.com','***',21) USING TTL 60;

2、cassandra数据库连接时用的jdbc,配置跟关系型数据库一样。暂时还不支持现有的持久层框架。如下:

   driver=org.apache.cassandra.cql.jdbc.CassandraDriver
   url=jdbc\:cassandra\://localhost\:9160/xxxx?version\=3.0.0

   xxxx是keyspace名称,version是cql版本。在这我遇到一个密码问题,在网上我查了好多资料配置相关的文件,但始终不能用在这个版本。所以用户名和密码一直闲置。希望有经验的传授一下下。不胜感激!

3、访问远程cassandra数据库

其实cassandra就是一个本地的存储文件。所以跟他相关的好多东西都要在文件里直接配置。假设远程服务器叫A,你使用的电脑为B。在A的电脑上找到Cassandra目录下conf,找到Cassandra.yaml文件打开:

     rpc_address: 0.0.0.0  设定能够连接到本机的ip ,专业点叫nodes,设置多个电脑ip直接逗号隔开。

     listen_address: x.x.x.xxx这个写远程服务器本机ip地址,然后就ok了。

4、cassandra除了cql来向习惯那样写sql,还能用java直接操作,此处略去。cassandra不像oracle或mysql之类有自增的主键id。所以我们用的是日期。在使用cql过程中,会遇到很多想不到的小知识点,致使你的工作不能进行。当让也有好用的功能,比如在第一点里插入语句最后的一句USING TTL 60;就是在60ms后删除该条数据。在遇到条件查询语句如:SELECT TTL (name) from clicks  WHERE url = 'http://apache.org' ALLOW FILTERING;记住ALLOW FILTERING一定要写!否则你会哭!

5、CQL在客户端中式不支持中文直接insert,即cql里面不能带有中文,会报错:Bad Request:Input length = 1。如果直接用jdbc存储的话就能直接用,不用担心编码的问题!

6、学习cql,一定要仔细研读这个文档http://www.datastax.com/documentation/cql/3.0/index.html

以上只是很小的一部分问题,但是让人头疼,至于其他的东西网上的资料很多,大家可以自己查找学习。

以后想起什么东西再补上。。。

http://tech.chinaunix.net/a2010/1225/1142/000001142663.shtml

 

 

 

分享到:
评论
1 楼 loveczp 2014-12-16  
能介绍下为什么选择cassandra吗?

相关推荐

Global site tag (gtag.js) - Google Analytics