我最近构建了一个 Hadoop
- Cloudera 集群
和 Cassandra
集群,有 2 个节点。我现在想做一些基准测试,收集一些关于资源使用的数据。
我搜索了很多,找到了 HiBench
和 Cassandra
压力工具。我不想与其他系统进行比较,我想测量自己的系统,但很难想象,我如何才能获得真实且正确的值。集群由 2 个虚拟机组成,使用 KVM
创建。 Cassandra
在 Docker
容器中。难以解释,如何分析这个系统,而不得到错误的结果。
最佳答案
一些评论
Cluster consists of 2 virtual machines, created with KVM
如果您想对性能 进行基准测试,请不要使用虚拟机。实际上,Cassandra 在磁盘上执行顺序写入以优化扫描操作。通过使用虚拟机和共享磁盘,顺序写入的好处就失去了,因为管理程序可以重新排序并分派(dispatch)不同磁盘扇区上的连续数据,从而破坏了先前对顺序扫描的优化
一种替代方法是确保您为每个 VM 拥有一个专用磁盘。
如果你不是在做性能基准测试,请忽略上面的评论
第二个建议,使用真实数据集,例如不适合内存的大数据集,以便您可以了解每种技术的行为方式。阅读此内容了解更多详情:http://www.nextplatform.com/2016/02/19/the-myth-of-in-memory-computing/
关于Hadoop 和 Cassandra 基准测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35522924/