摘要:这是转来的文章,面对同样的问题,希望自己能够明白一些道理。也分享给同学们。如果这篇文章没有分享给你,那是我的错。如果这篇文章分享给你了,你却没有读,继续走弯路的你不要怪我。如果你看了这篇文章,只读了一半你就说没时间了,说明你已经是个“茫”人了。如果你看完了,你觉得这篇文章只是讲讲大道理,说明你的人生阅历还不够,需要你把这篇文章珍藏,走出去碰几年壁,头破血流后再回来,再读,你就会感叹自己的年少无知。...
阅读全文
摘要:最近一直在做Cassandra优化相关的工作,大的方面就是主要考虑如何提升Cassandra的读性能。我主要集中在两点上:索引的优化Cassandra在多级存储介质的环境下的改进这 两点改进目前都已经做完,这里我的师弟也做出了突出的贡献。但是,还有一点,是我除了以上两点以外思考比较多的:就是Compaction操作。现在的 NoSQL数据库必须要有Compaction操作。但是似乎研究界,工业界对于Compaction的关注没有那么多。也可能是这个问题比较简单,大家 不愿意关注。也可能这个问题想要得到好的结果与实际付出不相符合。不管怎样,我还想结合这些天的测试和自己的思考,和大家一起讨论以下的
阅读全文
摘要:这篇博客,对Cassandra配置-cassandra.yaml的配置项进行重点解释。 OptionDefaultValueauthenticatororg.apache.cassandra.auth.AllowAllAuthenticatorauthorityorg.apache.cassandra.auth.AllowAllAuthoritybroadcast_addresssameaslisten_addresscluster_nameTestCluster(这个名字修改了,cassandra-cli连接的时候,需要指定,默认就是连的这个。)column_index_size_in_..
阅读全文
摘要:有关Cassandra的Compaction机制写了好几篇博客了。好像像我这么纠结Compaction机制的比较少吧。我比较了不同Compaction策略对写性能的影响、读性能的影响,以及compaction本身的性能我也有测试。就是想以具体的数字,来证实Compaction机制的特点,从而找到合适的应用场景。 LeveledCompaction是1.0以后,参考Leveldb实现的一个机制。确实有很多好处,如下:保证90%的读只读一个sstable文件,最坏的情况,当单机有10T数据的时候,7(7层)个sstable无用数据(删除的,过期的)比较少,最多占到10%Compaction空间开销
阅读全文
摘要:使用YCSB,value大小为1k。入8000w数据。统计数据如下:综合数据 RunTime(ms)3773307Throughput(ops/sec)21201.56Operations80000000AverageLatency(us)4691.972MinLatency(us)119MaxLatency(us)464015095thPercentileLatency(ms)799thPercentileLatency(ms)28OPS数据延迟数据 延迟和OPS都要比SizeTieredCompaction好。OPS要高5000OPS。
阅读全文
摘要:在8000w数据规模上,跑了10w个查询,因为数据生成是有YCSB完成的,而且,key也是随机生成的。重复程度不能够模拟真实的应用。测试的结果无法真实表现出Compaction策略之间的差异。不过,我会验证以下。这次是对SizeTiered影响的测试。SSD随机读真的太给力了。是粗略估计HDD的100倍。测试结果如下:冷启动综合数据 RunTime(ms)103728Throughput(ops/sec)9640.598Operations1000000AverageLatency(us)10313.15MinLatency(us)237MaxLatency(us)142498895thP..
阅读全文
摘要:之前测试过在HDD上的表现,接下来的一组数据是在SSD上表现。这篇博客主要是测试写性能,众所周知,顺序写在SSD上,与HDD上对比,并没有太多的优势,不过,顺序写可以充分的利用SSD,延长SSD的寿命。数据如下:综合数据 RunTime(ms)4381994Throughput(ops/sec)15974.46Operations100000000AverageLatency(us)6237.33MinLatency(us)107MaxLatency(us)660471595thPercentileLatency(ms)1299thPercentileLatency(ms)58OPS情况延迟.
阅读全文
摘要:这张图片是在微博上转过来的,以备我自己查看。这张图上的数据,应该印在脑子里。
阅读全文
摘要:一直只是看到官方有关LeveledCompactionStrategy优于SizeTieredCompactionStrategy的说法,主要有:节省空间,在做Compaction操作过程中,最多需要预留10%的额外空间,而不是SizeTieredCompactionStrategy做major compaction需要的一倍空间,提高了磁盘的利用率。读性能的提升。主要是因为level内部数据有序,没有重叠。重复数据只会在不同的level之间出现。据说可以保证90%读,只需要读一个sstable。我想这也要在一定的读写比例之下,才能实现。具体有待测试。对于写性能,我没看到什么说明,如果有,大家
阅读全文
摘要:cassandra优化的工作还继续,而且效果不错。等待海量规模数据检验。平时在测试优化cassandra的时候,经常会用到一些命令,有些还挺不好记的,记录到这里,以备查找:修 改CompactionStrategy update column family data with compaction_strategy=LeveledCompactionStrategy and compaction_strategy_options=[{sstable_size_in_mb:10}];设置压缩失效 update column family data with compression_options
阅读全文