数据库的负载和性能测试

时间:2013-02-02 17:38:31

标签: database load-testing performance-testing stress-testing database-testing

这是我的团队第一次要求我对数据库进行一些测试,我不知道如何处理。通过对数据库进行测试我的意思是,我需要看看它能够多快地将记录插入其中。直到它能够处理的压力。就像数据库的负载和性能测试一样。我们即将使用的数据库是XPRESSmp

因此,当我们需要测试数据库时,我们通常会做什么样的测试,以及我可以为此研究哪些工具。我见过的大多数文章主要与Oracle和MySQL相关。但这是一个新的数据库。

我能想到的一种方法是编写一个带有X个线程的多线程程序,它将以非常高的速度将数据泵入XMP。并继续测量每个线程花费的时间。我还能做些什么来测试数据库?

我的团队要求我通过测试来打破数据库,但我们应该知道它在什么情况下进行了测试以及背后的原因是什么。

在对数据库进行测试时,我应该知道并考虑哪些要点。

P.S我将在单独的LnP机器上进行此测试。

3 个答案:

答案 0 :(得分:1)

通常,SysBench用于测试MySQL上的查询性能。不过,它不仅适用于MySQL。我只有它的基本知识,所以我建议你不要问我并阅读文档: http://sysbench.sourceforge.net/

答案 1 :(得分:0)

您可以使用以下工具:

HammerDB 是Oracle,SQL Server,TimesTen,PostgreSQL,Greenplum,Postgres Plus Advanced Server,MySQL和Redis的开源数据库负载测试和基准测试工具。 HammerDB具有动态脚本支持,具有自动化,多线程和可扩展性。 HammerDB包括基于行业标准基准测试的完整内置工作负载,以及Oracle数据库的捕获和重放。

下载或查看更多信息,请访问http://hammerora.sourceforge.net/

<强> P-单元

说明

单元测试和性能基准测试的开源框架,由Andrew Zhang根据GPL许可证发起。 p-unit支持使用单线程或多线程运行相同的测试,跟踪内存和时间消耗,并以纯文本,图像或pdf文件的形式生成结果。 http://p-unit.sourceforge.net/

<强> DBMonster

说明

DBMonster是一个生成随机数据的应用程序,用于在高负载下测试SQL数据库驱动的应用程序。 http://sourceforge.net/projects/dbmonster/

答案 2 :(得分:0)

回复 here,使用 k6 SQL extension