我正在尝试使用 YCSB 基准测试工具对 NoSQL 数据库(即 Cassandra)进行基准测试。为此,我显然需要设置性能指标来衡量性能。我决定选择Read
,write
和update
。现在我很不确定它们是否是选择的正确指标,或者可能类似于Scale-up
,和/或elastic speedup
值得选择?请给我一些建议。
问问题
737 次
1 回答
0
您提到了操作延迟(读取、写入、更新)。这绝对是一个非常重要的指标,因此您应该设计测试来显示在这种情况下延迟如何变化:
- 操作延迟,用于不同的负载(每秒操作数)。
- 针对不同工作负载的操作延迟(考虑工作负载中不同的操作组合或百分比)。
- (不太重要)不同关键流行度分布的操作延迟。
此外,您可以测试的其他内容包括:
- 弹性加速:在线添加服务器的影响(对操作延迟)。
- 容错:随机服务器故障的影响(对操作延迟)。
- 负载平衡:考虑到不同的关键流行度分布和工作负载中不同的时间局部性,数据库在平衡服务器负载方面有多好。
- 可扩展性:拥有更多或更少的节点如何影响操作延迟。在这种情况下,服务器不会在线添加(这将是弹性加速实验)。
- 如果您在 EC2 上运行实验,那么 EC2 实例类型(中型、大型等)的选择如何影响性能。
此外,考虑使用直方图或箱线图来观察对延迟的影响,因为仅绘制平均值并不能让您测量延迟的可变性。
最后,看看这篇 VLDB 论文以获得更多想法。
于 2016-08-09T16:50:40.227 回答