相关疑难解决方法(0)

什么时候不使用Cassandra?

最近有很多关于卡桑德拉的谈话.

Twitter,Digg,Facebook等都使用它.

什么时候有意义:

  • 用Cassandra,
  • 不要使用Cassandra,而且
  • 使用RDMS而不是Cassandra.

database rdbms cassandra nosql

191
推荐指数
9
解决办法
9万
查看次数

从MySQL切换到Cassandra - 优点/缺点?

对于一些背景知识 - 这个问题涉及在单个小型EC2实例上运行的项目,并且即将迁移到中型项目.主要组件是Django,MySQL和大量用python和java编写的自定义分析工具,这些工具都是繁重的工作.同一台机器也在运行Apache.

数据模型如下所示 - 大量实时数据来自各种网络传感器,理想情况下,我想建立一个长轮询方法,而不是每15分钟进行一次当前轮询(限制为计算统计数据并写入数据库本身).一旦数据进入,我将原始版本存储在MySQL中,让分析工具在这些数据上松散,并将统计信息存储在另外几个表中.所有这些都是使用Django呈现的.

我需要的关系功能 -

  • 为了通过[SliceRange在Cassandra的API似乎satisy这种]
  • 通过...分组
  • 多个表之间的多种关系[Cassandra SuperColumns似乎在一对多之间表现良好]
  • 狮身人面像给我一个很好的全文引擎,所以这也是必要的.[在Cassandra上,Lucandra项目似乎满足了这种需求]

我的主要问题是数据读取非常慢(并且写入也不是很热).我现在不想在它上面投入大量资金和硬件,而且我更喜欢随着时间的推移可以轻松扩展的东西.在这种意义上(或便宜),纵向扩展MySQL并非易事.

所以基本上,在阅读了很多关于NOSQL并尝试了像MongoDB,Cassandra和Voldemort这样的东西之后,我的问题是,

  • 在中等EC2实例上,通过转换到像Cassandra这样的东西,我可以获得读/写的任何好处吗?这篇文章(pdf)肯定似乎暗示了这一点.目前,我会说每分钟几百次写入是常态.对于读取 - 由于数据每5分钟左右更改一次,因此缓存失效必须非常快.在某些时候,它应该能够处理大量并发用户.即使创建了索引,MySQL在大型表上进行某些连接时,应用程序性能也会被杀死 - 大约32k行的内容需要超过一分钟才能呈现.(这可能是EC2虚拟化I/O的工件).表的大小约为4-5百万行,并且大约有5个这样的表.

  • 考虑到CAP定理和最终的一致性,每个人都在谈论在多个节点上使用Cassandra.但是,对于刚刚开始增长的项目,部署单节点cassandra服务器是否有意义?有什么警告吗?例如,它可以取代MySQL作为Django的后端吗?[这是推荐的吗?]

  • 如果我确实转移,我猜我将不得不重写部分应用程序以执行更多"administrivia",因为我必须执行多次查找以获取行.

  • 将MySQL用作关键值存储而不是关系引擎是否有意义,并继续使用它?这样我可以利用大量可用的稳定API,以及稳定的引擎(并根据需要使用关系).(Brett Taylor在Friendfeed上的帖子 - http://bret.appspot.com/entry/how-friendfeed-uses-mysql)

任何转变的人的见解将不胜感激!

谢谢.

mysql migration django cassandra nosql

59
推荐指数
2
解决办法
3万
查看次数

如何在Cassandra中创建自动增量ID

我们知道在SQL数据库中创建自动增量ID很容易,在Cassandra中有一个很好的解决方案吗?ID应该是键名或列名.

cassandra

46
推荐指数
4
解决办法
5万
查看次数

Apache Cassandra的知识来源

我打算用NoSQL开始项目进行数据存储.我试图在谷歌中找到关于Cassandra的信息,但我发现了非常基本的信息.任何人都知道我在哪里可以找到关于Cassandra的良好知识来源(规划数据结构,处理数据(可能从mysql迁移?)等)?

cassandra nosql

5
推荐指数
1
解决办法
598
查看次数

标签 统计

cassandra ×4

nosql ×3

database ×1

django ×1

migration ×1

mysql ×1

rdbms ×1