我试图做一个使用aerospike的基准测试,例如,假设我想测试存储文件可能是在airospike中的JSON并对couchbase做同样的测试,我可以使用它来测试什么样的工具/方法在aerospike和couchbase之间。
答案 0 :(得分:5)
我对Couchbase不是很熟悉,但可以指出你对Aerospike的基准测试(我在那里工作)。 YCSB(雅虎云系统基准测试)可能是两者兼用的最佳工具。 Here is用于对抗Aerospike的代码。
现在对于Aerospike的具体基准测试,我建议使用Aerospike的基准测试工具之一,例如Java benchmark tool并使用字符串(-o S :)或Java blob(-o B :)和一个长度与您的json文档相当。
例如:
./run_benchmarks -h 127.0.0.1 -p 3000 -n test -k 10000000 -b 1 -o B:1400 -w RU,80 -z 8
这将运行80%读取和20%写入(-w RU,80
)以及使用8个并发线程(-z 8
)的工作负载。
要考虑的一些要点:
最后,我建议阅读一些与基准测试Aerospike和其他NoSQL数据库相关的published document。特别是this one。
希望这有帮助!
答案 1 :(得分:2)
对于Couchbase,此过程类似,Couchbase提供了一种工具,可通过cbworkloadgen在群集上生成大量流量。
与上述航空航天公司建议的工作量相当的工作量将按如下方式执行(根据您的操作系统在上述链接中指定的目录中):
./cbworkloadgen -n 127.0.0.1:8091 -u username -p password -j -i 10000000 -r 0.2 -t 8
与Aerospike的示例一样,80:20再次使用JSON文档读取/写入(-r 0.2
)和8个并发线程(-t 8
)(注意,不是JSON blob )存储(-j
)
如果您正在为将来的用例进行基准测试,请尝试使用接近您将要使用的设置(即,硬件配置的多个节点接近您打算使用的设置),无论是在数据存储区方面集群和客户端主机(即多个主机)。
最后,许多不同的公司将产生许多不同的基准,这些基准可能会或可能不会准确地表示您可以获得的软件性能(以及他们声称它将如何与竞争对手相关)。您必须彻底研究并将任何声明与您自己的基准相匹配,这一点非常重要。一些已发布的基准测试可能会返回一个级别的性能,而在您的特定设置上可以获得相同的性能可能,但可能需要非常精细的调整(并且您需要付出大量的努力)。
答案 2 :(得分:1)
我最近试图测试Aerospike。我使用的基准是airospike-client中包含的benchmark。这可能是一个不错的选择。 :)