我看到很多声明如下:“Cassandra写入速度非常快”,“Cassandra的读取速度比写入慢,但比MysqL快得多”
在我的windows7系统上:
我安装了默认配置的MysqL.
我安装了PHP5的默认配置.
我安装了默认配置的Casssandra.
在MysqL上进行简单的写测试:“INSERT INTO wp_test(id,title)VALUES(‘id01′,’test’)”给我结果:0.0002(s)
适用于1000个刀片:0.1106(s)
在Cassandra上进行简单相同的写测试:$column_faily-> insert(‘id01’,array(‘title’=>’test’))给出结果:0.005(s)
适用于1000个插页:1.047(s)
对于读取测试,我也得知Cassandra比MysqL慢得多.
所以问题是,这听起来是否正确,我在Cassadra上进行一次写操作需要5ms?或者出了点问题,应该至少0.5毫秒.
当人们说“Cassandra比MysqL更快”时,它们意味着当你处理数TB的数据和许多同时用户时. Cassandra(以及许多分布式Nosql数据库)针对许多节点上的数百个同时读取器和写入器进行了优化,而不是MysqL(和其他关系数据库),它们在单个节点上实现了非常快速的优化,但往往会崩溃.您尝试在多个节点上缩放它们.顺便说一下这种权衡的概括 – 绝对最快的磁盘I / O是普通的旧UNIX平面文件,并且许多对延迟敏感的金融应用程序因此而使用它们.
原文链接:https://www.f2er.com/php/135110.html如果你正在构建下一个Facebook,你需要像Cassandra这样的东西,因为单个MysqL盒子永远不会经受数千个同时读写的惩罚,而使用Cassandra你可以扩展到数百个数据节点并处理容易装见scaling up vs. scaling out.
另一个用例是当您需要将大量批处理能力应用于太字节或数PB的数据时. Cassandra或HBase很棒,因为它们与MapReduce集成,允许您在数据节点上运行处理.使用MysqL,您需要提取数据并将其喷射到处理节点网格中,这会占用大量网络带宽并导致大量不必要的复杂化.